我有一个动态组件,有时是router-link
,有时是a
元素。
当它是路由器链接时,我需要使用@click.native
,否则,我需要它只是没有本地修饰符的@click
,否则它将无法在a
标签上工作。
有办法处理这个吗?
<component
@click.native="hasPerms"
:is="checkComponent"
/>
checkComponent() {
if (this.show) {
return 'router-link'
} else {
return 'a'
}
}
conditional是这里的关键字,所以您可以简单地使用条件呈现。只需用v-if/v-else指令
添加它两次(带或不带click.native)<component v-if="this.show" @click.native="hasPerms" />
<component v-else @click="hasPerms"/>