先写一个事件绑定

给组件绑定原生事件

这段代码点击Child是没有作用的

这是因为当我给一个组件绑定一个事件的时候,<child @click="handleClick"></child>,这个实际上绑定的是一个自定义的事件

当你鼠标点击的时候,触发的并不是这个click事件

给组件绑定原生事件

给组件绑定原生事件

当我点击的时候,就能够触发childclick事件

这是因为当我在div里面绑定事件<div @click="handleChildClick">Child</div>是原生的事件,在child里面绑定的事件

<child @click="handleClick"></child>是自定义事件

那么我现在想要触发这个自定义事件,需要在通过this.$emit来触发自定义事件

给组件绑定原生事件

给组件绑定原生事件

就有click出来了
执行逻辑是:首先当你点击了div元素的时候,div会监听<div @click="handleChildClick">Child</div>到自身被点击了,然后向外触发this.$emit('click');了一个自定义事件,然后在组件中<child @click="handleClick"></child>监听了这个自定义事件,那么这个自定义事件就会被执行

当然这样写太过麻烦:

我就想在child上监听原生事件,可不可以呢?可以的

给组件绑定原生事件

给组件绑定原生事件

@click.native="handleClick"在自定义事件后面添加一个native就会变成监听原生事件了

相关文章:

  • 2022-12-23
  • 2021-12-05
  • 2022-12-23
  • 2021-12-13
  • 2018-04-14
  • 2022-02-07
  • 2021-06-01
  • 2022-02-07
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-10-22
  • 2021-08-09
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案