【发布时间】:2017-11-02 21:36:01
【问题描述】:
我写了一个functional component 来编译特定条件的表单域。表单字段是它们自己的组件。所以我分为三个层次:
<FormComponent> // handles input events
<FunctionalComponent> // selects form fields
<FormFieldComponent> // emits input events
</FunctionalComponent>
</FormComponent>
函数式组件没有this,但获取一个上下文对象作为渲染函数的参数。我能做的是使用context.data.on[eventName](event) 或一些类似的结构。我也知道我可以直接使用事件总线或 dom 元素,如 here 所述。
这一切在我看来都相当肮脏。
功能组件中是否有任何 this.$emit 等价物?
【问题讨论】:
-
您是说您希望您的 FunctionalComponent 将事件从您的 FormFieldComponent 冒泡到您的 FormComponent?
-
是的,就是这样!我花了一分钟的时间来解决它,但这应该可以解决我的问题。非常感谢@RoyJ
标签: javascript vue.js vuejs2 vue-component