我试图将自定义处理程序InlineButtonClickHandler
添加到<router-link>
组件的click
事件中,以便发出自定义appSidebarInlineButtonClick
事件。
但是,我的代码无法正常工作。我究竟做错了什么?
<template>
<router-link :to="to" @click="InlineButtonClickHandler">
{{ name }}
</router-link>
</template>
<script type="text/babel">
export default {
props: {
to: { type: Object, required: true },
name: { type: String, required: true }
},
methods: {
InlineButtonClickHandler(event) {
this.$emit('appSidebarInlineButtonClick');
}
}
}
</script>
最佳答案
您需要添加 .native
modifier:
<router-link
:to="to"
@click.native="InlineButtonClickHandler"
>
{{name}}
</router-link>
这将侦听
router-link
组件的根元素的本机click事件。关于vuejs2 - 使用 “v-on:”指令将事件监听器添加到<router-link>组件-VueJS,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42091805/