Webpack 除了使用事件总线,还有什么';在祖辈组件中捕获孙辈组件发出的事件的好方法是什么?
假设我在父子关系中有3个组件Webpack 除了使用事件总线,还有什么';在祖辈组件中捕获孙辈组件发出的事件的好方法是什么?,webpack,vue.js,babeljs,vuejs2,Webpack,Vue.js,Babeljs,Vuejs2,假设我在父子关系中有3个组件 Component1是Component2的父级,Component2是Component3的父级 组件3发出事件1。通常,event1在Component2中处理,但在我的特殊情况下,我希望在Component1中处理它 背景故事 我之所以以这种方式设置组件,是因为Component2是一个通用组件,其内容是Component3。明天,我可以创建另一个组件4,并将其作为道具传递给组件2。从Component4或Component3发出的任何事件都需要从Compon
Component1
是Component2
的父级,Component2
是Component3
的父级
组件3
发出事件1
。通常,event1
在Component2
中处理,但在我的特殊情况下,我希望在Component1
中处理它
背景故事
我之所以以这种方式设置组件,是因为Component2
是一个通用组件,其内容是Component3
。明天,我可以创建另一个组件4
,并将其作为道具传递给组件2
。从Component4
或Component3
发出的任何事件都需要从Component1
的模板中的事件处理程序进行访问
<template>
<component2 @event1="doSomething"></component2>
</template>
如果您有一个通用组件将被许多组件使用,请参见mixin:Yes,但是,这些示例是常规的JS格式,而我的是在<代码>中。VUE 可以考虑将组件传递到而不是作为一个道具。您可以尝试集中状态管理,如果有一个将被许多组件使用的通用组件,请参阅MIXIN:是的,但是,这些示例是常规的JS格式,而我的是在<代码>中。VUE 可以考虑将组件传递到而不是作为一个道具。