【发布时间】:2019-04-11 11:03:59
【问题描述】:
我正在尝试在 vue 中的路由器链接上创建自定义事件,但它似乎不起作用。我想做这样的事情-
父母-
<Home @customEvent="myEventHandler" />
脚本-
export default {
methods: {
myEventHandler() {
console.log('yay')
}
}
孩子
export default {
...
mounted() {
axios.get('api/link').then(res => {
this.posts = res.data;
this.$emit('customEvent')
}
}
这可以很好地使用常规组件创建 yay 的日志,但是当我尝试做这样的事情时-
<router-link to='/home' @customEvent="myEventHandler">Home</router-link>
它似乎不起作用。如何从使用 router-link 创建的组件中侦听自定义事件?
提前谢谢...
【问题讨论】:
-
您为什么希望它能够工作?
<router-link>没有子组件来发出事件。你的意思是<router-view>? -
它有效 - 只是没有包含该代码
-
有一个单独的 router.js 文件将组件映射到路径 - 我应该在某处添加事件侦听器吗?
标签: javascript vue.js vuejs2 vue-router