为什么VueJs引入.native事件修饰符?这个的用例是什么Vue.js
我没有任何关于为什么VueJs引入.native事件修饰符?这个的用例是什么Vue.js,vue.js,vuejs2,Vue.js,Vuejs2,我没有任何关于本机事件修饰符的文档。我见过一些这样的地方: <router-link @click.native="pressThis()"> Press here </router-link> 按这里 路由器链接上的native修饰符有什么用单击事件。 以及“本机”修饰符还可以有哪些其他用例?您可以覆盖自定义组件中的Vue事件。例如,您可能有一个列表组件,一旦您单击一个您称之为this.$emit('click',selectedItemData)的项目,它将向监视
本机事件修饰符的文档。我见过一些这样的地方:
<router-link @click.native="pressThis()"> Press here </router-link>
按这里
路由器链接上的native
修饰符有什么用
单击事件
。
以及“本机”
修饰符还可以有哪些其他用例?您可以覆盖自定义组件中的Vue事件。例如,您可能有一个列表组件,一旦您单击一个您称之为this.$emit('click',selectedItemData)
的项目,它将向监视该项目的父组件发出单击事件
但是,有时确实需要绑定到本机HTML/DOM事件侦听器元素.addEventListener('click',callThisMethod)
,这就是.native
的用法。另外,请注意,一旦您的组件像非本机事件一样被销毁,它将处理事件侦听器的清理
总之:当您需要DOM中的“原始”事件时,请使用
.native
。我不确定,我只是假设native修饰符类似于isTrusted event属性的别名,即仅当事件以本机方式而非编程方式触发时才会触发事件回调。换句话说,不要对合成-不可信事件做出反应。值得一提的是,.native
在Vue 3中不再是必需的。我听到你说的是。当我需要来自DOM的原始事件时,使用native
。不过,我最近遇到了一个奇怪的情况,根据我使用按钮组件的位置,。native
不会被触发。我在这里描述了这一点:。你对此有什么想法或解释吗?先谢谢你。