vue 根据日期计算年龄
时间: 2023-07-04 14:20:19 浏览: 192
你可以使用 JavaScript 中的 Date 对象来计算年龄,下面是一个简单的 Vue 组件示例:
```html
<template>
<div>
<label for="dob">出生日期:</label>
<input type="date" id="dob" v-model="dob">
<p>您的年龄是 {{ age }} 岁</p>
</div>
</template>
<script>
export default {
data() {
return {
dob: '', // 出生日期,格式为 YYYY-MM-DD
};
},
computed: {
age() {
if (!this.dob) return ''; // 如果出生日期为空,则返回空字符串
const today = new Date();
const birthDate = new Date(this.dob);
let age = today.getFullYear() - birthDate.getFullYear();
const monthDiff = today.getMonth() - birthDate.getMonth();
if (monthDiff < 0 || (monthDiff === 0 && today.getDate() < birthDate.getDate())) {
age--;
}
return age;
},
},
};
</script>
```
这个组件包含一个日期输入框和一个显示年龄的文本。使用 v-model 指令绑定输入框的值到 dob 属性。在计算属性 `age` 中,我们将出生日期和当前日期转换成 Date 对象,并计算出两个日期之间的年龄。最后返回计算出的年龄。
阅读全文