1.使用v-for循环得到的列表<li>元素,想要通过监听mouseover和mouseout两个事件来对划过的<li>元素的样式进行修改,但是在方法中使用this无法正确获得我需要元素。比如我在methods中定义的方法showUp,并且在data中已经给每个<li>元素定义了pageup属性,但是在showUp中打印pageup的结果是undefined,这是为什么?求高手解释下!
2.代码如下:
3.结果如下:
1.使用v-for循环得到的列表<li>元素,想要通过监听mouseover和mouseout两个事件来对划过的<li>元素的样式进行修改,但是在方法中使用this无法正确获得我需要元素。比如我在methods中定义的方法showUp,并且在data中已经给每个<li>元素定义了pageup属性,但是在showUp中打印pageup的结果是undefined,这是为什么?求高手解释下!
2.代码如下:
3.结果如下:
这个肯定获取不到啊!
改写showUp,传入index
showUp(index) {
console.log(this.pageitems[index].pageup)
}
你再看看
6 回答5.3k 阅读✓ 已解决
9 回答9.5k 阅读
5 回答3.8k 阅读✓ 已解决
4 回答8.1k 阅读✓ 已解决
7 回答10.2k 阅读
5 回答8.4k 阅读
2 回答10.5k 阅读✓ 已解决
showUp
函数里面的this ,指向的是 当前vue实例,可以获取到this.pageitems 整个数组
虽然 给每个<li>元素定义了pageup属性,但是没有给对应的li 元素添加对应的属性
@mouseover = showUp(item)
,这里传入item,就可以拿到 item.pageup属性了。