组件中触发的事件。 这是我的组件 它会发出一个我想要在父布局的插槽中捕获的事件。
我想知道如何获取在<slot/>
组件中触发的事件。
这是我的组件
<template>
<button @click"$emit('event')">Submit</button>
</template>
它会发出一个我想要在父布局的插槽中捕获的事件。
<template>
<slot @event="doThis"/>
</template>
我如何实现这一点。我的一些阅读将我带到了作用域位置,但我不是100%确定。
发布于 2020-01-10 12:40:46
使用事件总线闪存事件,以便任何组件在侦听时都可以捕获该事件,如下所示:
在event-bus.js中
import Vue from 'vue';
export const EventBus = new Vue();
在父组件和子组件中导入事件总线文件:从‘./ event -bus.js’导入{ EventBus };
在您的父组件中,侦听事件:
methods:
{
const clickHandler = function(params) { /*Do whatever */ }
}
mounted()
{
EventBus.$on('event', clickHandler);
}
在您的子组件中,您可以触发事件,如下所示:
<template>
<button @click="EventBus.$emit('event', params)">Submit</button>
</template>
https://stackoverflow.com/questions/59681538
复制相似问题