Evg*_*nko 28 vue.js vue-router vuejs2
我试图自定义处理程序添加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>
Run Code Online (Sandbox Code Playgroud)
tha*_*ksd 68
您需要添加.native修饰符:
<router-link
:to="to"
@click.native="InlineButtonClickHandler"
>
{{name}}
</router-link>
Run Code Online (Sandbox Code Playgroud)
这将侦听router-link组件的根元素的本机click事件.
小智 8
<router-link:to="to">
<span @click="InlineButtonClickHandler">{{name}}</span>
</router-link>
Run Code Online (Sandbox Code Playgroud)
也许你可以试试这个。