Vue 监听列表item渲染事件

时间:2023-01-01 23:15:02

直入正题,不废话!

使用Vue渲染列表是很简单方便的,但如果需要在渲染item的时候去监听事件就无法实现了,楼主我翻遍了Vue的api也没找到合适的方法去解决,其中也提到使用watch和vue.nextClick 监听,但这些都不能实现,苦恼啊,不过机智的我还是想到了曲线救过的方法,利用过滤器来实现,代码如下

<li v-for="item in list"> {{item.content | setEvent  item.id , item.name}}</li>
new Vue({
el:'',
data:{
list:[]
},
fliters:{
setEvent:function(content , id , name) {
// TODO 处理你的事件。。。。
return content ;
}
}
})
过滤器函数始终以表达式的值作为第一个参数(item.content)。带引号的参数视为字符串,而不带引号的参数按表达式计算。这里将表达式 item.id 将传给过滤器作为第二个参数,表达式 item.name 的值在计算出来之后作为第三个参数。注意一定要return 当前li需要显示的内容,否则li无数据展示,这样就可以实现监听列表item的的渲染事件,厉害不!哈哈哈!