vue事件代理

Posted 吴小明

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue事件代理相关的知识,希望对你有一定的参考价值。

点击li打印它的index

    <ul>
      <li v-for="(item,index) in list" :key="index" @click="handleClick(index)">{{item}}</li>
    </ul>
    handleClick(index) {
      console.log(index)
    }

事件代理的方式:

给父元素绑定点击事件,给当前元素绑定自定义属性,属性值为下标

    <ul @click="handleClick">
      <li v-for="(item,index) in list" :key="index" :my-index=\'index\'>{{item}}</li>
    </ul>

通过e.target.getAttribute()可以获取自定义的标签属性

    handleClick(e) {
      const index = +e.target.getAttribute(\'my-index\')
      console.log(index)
    }

 

以上是关于vue事件代理的主要内容,如果未能解决你的问题,请参考以下文章

事件委托(事件代理)(传统的,vue , e.target.dataset.index)

js中的事件委托/代理

Vue 核心

VSCode自定义代码片段1——vue主模板

Vue 核心

VSCode自定义代码片段——.vue文件的模板