【发布时间】:2017-01-28 03:14:30
【问题描述】:
我的问题是关于Maquette Javascript 框架中组件之间的通信。
假设我在Application 组件中使用了一个Menu 子组件:Application 实例想知道何时在Menu 实例中选择了一个菜单项,以便交换显示的主要内容在应用程序中(例如)。换句话说,我需要一种在子组件与其父组件之间进行通信的方法。如何在 Maquette 中实现这一点?
当然,我可以将应用程序实例拥有的回调传递给菜单实例,菜单实例将在选择项目时调用。但我有点不愿意这样做,因为“选择”事件只是菜单组件的“渲染端”方面,所以我希望该事件不要泄漏到我的 Menu API 中,而是留在里面而是渲染函数/方法。
所以,我想在“渲染端”处理事件。但我想这意味着我必须从Menu 的渲染函数发送一个CustomEvent 并在Application 的渲染函数中注册一个CustomEvent 处理程序,对吧?模型是否支持此用例?对于我的用例,CustomEvent 是否还有其他替代方案?
谢谢!
【问题讨论】:
标签: javascript events components communication maquette