vue中自定义组件为什么要加.native

子组件aMyTest.vue

子组件

父组件中引入子组件

<a-my-test @myClick="childClick" ></a-my-test>

子组件内部触发了myClick事件,那么父组件上的childClick事件将会触发,这是没问题的,我们一般可以通过这种方式将子组件的值   传递给父组件,childClick内部就可以接收到传递的数据1。


有时候我们想要给 子组件整体添加一个事件,而不是子组件内部的某个dom元素上添加事件,<a-my-test @click="childClick" ></a-my-test>,这样添加点击事件是不会触发的,

因为在自定义组件上注册的事件触发的是组件自定义的事件,根本不是原生的dom事件,既然不是,当然不会触发喽

将上面的模板改成

<a-my-test @click.native="childClick" ></a-my-test>,

点击事件就可以触发了,.native修饰符就是用来注册元素的原生事件而不是组件自定义事件的

参考:https://segmentfault.com/q/1010000011186651/a-1020000011187890

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  •   JavaScript 与 HTML 之间的交互是通过事件实现的。   事件,就是文档或浏览器窗口中发生的一些特...
    霜天晓阅读 3,581评论 1 11
  • vue概述 在官方文档中,有一句话对Vue的定位说的很明确:Vue.js 的核心是一个允许采用简洁的模板语法来声明...
    li4065阅读 7,295评论 0 25
  • 什么是组件? 组件 (Component) 是 Vue.js 最强大的功能之一。组件可以扩展 HTML 元素,封装...
    youins阅读 9,572评论 0 13
  • 此文基于官方文档,里面部分例子有改动,加上了一些自己的理解 什么是组件? 组件(Component)是 Vue.j...
    陆志均阅读 3,883评论 5 14
  • 组件(Component)是Vue.js最核心的功能,也是整个架构设计最精彩的地方,当然也是最难掌握的。...
    六个周阅读 5,664评论 0 32