我有一个列表,希望为列表中的每个项目处理一个单击事件
<ul>
<li
v-for="item, index in items"
:key="index"
@click="select(item)"
>
{{ item }}
</li>
</ul>
playbook 是
...
methods: {
select(item) {
console.log('Select', item)
}
}
当有大约10个项目时,这种方法效果很好.但是,当有大约1000个项目时,性能会变得非常慢,因为我为1000个项目附加了1000个事件.
解决方案是只为列表附加一个单击事件,并使用event.target
<ul @click="select($event)">
<li
v-for="item, index in items"
:key="index"
>
{{ item }}
</li>
</ul>
在函数select
中,如何获得每个项目对应的item
?