我正在使用 VueJS 创建注册表单!用户必须输入他/她的出生日期。
那么,我如何生成从 1900 年到当前年份的年份<select>
元素?
我试过这个:
new Vue ({
el: '.container',
methods: {
getCurrentYear() {
return new Date().getFullYear();
}
}
});
<div class="container">
<select id="dob">
<option value="0">Year:</option>
<option v-for="year in getCurrentYear()" :value="year">{{ year }}</option>
</select>
</div>
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
但是,在本例中,年份从 1 开始。那么,我该如何循环<option>
年份从 1900 年开始?
- 不要在循环中使用方法,而是使用计算属性。
- 不要使用
v-if
in a v-for
元素。这不好! https://v2.vuejs.org/v2/style-guide/#Avoid-v-if-with-v-for-essential
new Vue ({
el: '.container',
computed : {
years () {
const year = new Date().getFullYear()
return Array.from({length: year - 1900}, (value, index) => 1901 + index)
}
}
})
<script src="https://cdnjs.cloudflare.com/ajax/libs/vue/2.5.16/vue.js"></script>
<div class="container">
<select id="dob">
<option value="0">Year:</option>
<option v-for="year in years" :value="year">{{ year }}</option>
</select>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)