现在试着做一个日期选择器,当我点击input框弹出日期选择面板时,当天日期应该是默认选中的,即给这一天的dom加一个active的class。按照以前jquery的思路,我给每天的dom加一个data-day='20170101'属性,然后使用$('li[data-day=20170101]')这样就能找到这个元素。可是在vue中我应该从哪个方向去思考?应该怎么做?就是不通过元素查找的方式,而是通过比如computed之类的方法来改变状态什么的来实现
1 回答
牛魔王的故事
TA贡献1830条经验 获得超3个赞
代码应该如下(大概的示例):
<script>
export default {
data () {
return {
tody: TODAY,
days: [/*数据在这里*/],
activeIndex: null
}
},
methods: {
select (index) {
this.activeIndex = index
}
}
}
</script>
<template>
<ul>
<li v-for="(day, index) in days"
@click="select(index)"
:class="{active: index === activeIndex, today: day === today}">
{{day}}
</li>
</ul>
<template>
添加回答
举报
0/150
提交
取消