原因
根据Vue2.0官方文档关于父子组件通讯的原则,父组件通过prop传递数据给子组件,子组件触发事件给父组件。但父组件想在子组件上监听自己的click的话,需要加上native修饰符。
解决方法
方式一:在@click后加上.native(监听根元素的原生事件,使用 .native 修饰符)
@click.native = "..."
方式二:向外发送click事件,在 methods 内添加 _click 方法:
methods: {_click: function () {this.$emit('click', function () {//...})}}