<div class="row" v-for='(item,index) in lyricList' :class="{active:item[0]==currentTime}"> 绑定的样式不起作用? 自己测试过貌似是currentTime(data里的变量)取不到值 这是为什么? 如果不能解决的话,我想问一下样式绑定能用函数吗?样式绑定表达式能传参吗?类似于 active:addClass(item[0])
<div class="row" v-for='(item,index) in lyricList' :class="{active:item[0]==currentTime}"> 绑定的样式不起作用? 自己测试过貌似是currentTime(data里的变量)取不到值 这是为什么? 如果不能解决的话,我想问一下样式绑定能用函数吗?样式绑定表达式能传参吗?类似于 active:addClass(item[0])
v-bind绑定的可以是一个对象,一个表达式,也可是一个计算属性,这为你的绑定值提供了多样的选择,currentTime的值取不到原因不明,是否data的值有被改变过或者调用的时候有异常,是否有报错之类的
这是lyricList的类型, item[0]的值为number类型,currentTime是个随时间在改变的值,无异常也无报错。但是就是取不到currentTime。
PS:我用绑定函数的方式解决了这个样式绑定的问题(:class="isActive(item[0],index)") 但是我想知道为什么取不到currentTime
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答897 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
看了题主的数据样式,应该是做一个当前歌词样式更改的东西
问题应该出在currentTime上面,可以设置一个初始值999,然后页面上打印该值和item[0]的值进行比对,来检验该值是否改变。
个人猜想:
1.currentTime是否是嵌套在某个对象中,使用是否正确(可以贴出你的data)
2.在methods中改变currentTime的时候,是否正确更改了该值,是否使用如下改变currentTime的值(可以贴出你改变currentTime的方法)
原回答:
贴一下lyricList的数据结构吧,
如果item不是数组(不支持索引的类型)的话,你肯定取不到想要的值。