使用“ v-on:”指令将事件侦听器添加到组件-VueJS</p>

vuejs2 Vue.js

Eva猿

2020-03-12

</div>

我试图将自定义处理程序添加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>
</div>

第879篇《使用“ v-on:”指令将事件侦听器添加到组件-VueJS》来自Winter(https://github.com/aiyld/aiyld.github.io)的站点</p>

2个回答
理查德村村小宇宙 2020.03.12
<router-link:to="to">
    <span @click="InlineButtonClickHandler">{{name}}</span>
</router-link>

也许您可以尝试一下。

Tony凯 2020.03.12

您需要添加.native修饰符

<router-link
    :to="to"
    @click.native="InlineButtonClickHandler"
>
    {{name}}
</router-link>

这将侦听router-link组件根元素的本机click事件

问题类别

JavaScript Ckeditor Python Webpack TypeScript Vue.js React.js ExpressJS KoaJS CSS Node.js HTML Django 单元测试 PHP Asp.net jQuery Bootstrap IOS Android