Vue组件点击事件不触发问题解决方法

关于父子组件通讯的原则,父组件通过prop传递数据给子组件,子组件触发事件给父组件。但父组件想在子组件上监听自己的click的话,需要加上native修饰符。

@click="getDivision()"

换成下面这种就可以了

@click.native="getDivision()"

.native是什么?

.native - 监听组件根元素的原生事件。
主要是给自定义的组件添加原生事件。

给普通的标签加事件,然后加native是无效的,onclick事件不会触发!

通俗点讲:就是在父组件中给子组件绑定一个原生的事件,就将子组件变成了普通的HTML标签,不加'. native'事件是无法触发的。

例:
1.此时点击页面中的按钮无任何反应。



outClick(){
   alert('this is outer')
}

添加修饰符:
2.此时点击就会弹窗:



outClick(){
    alert('this is outer')
}

你可能感兴趣的:(vue,vue.js,javascript,ecmascript)