【问题标题】:In Flux architecture, will a Global Dispatcher be harmful?在 Flux 架构中,Global Dispatcher 是否有害?
【发布时间】:2016-03-12 20:56:29
【问题描述】:

据我了解,在 Facebook Flux 架构中,应该只有一个 Dispatcher。

有一个类似于事件总线的全局调度程序是合理的。但是,我想知道拥有一个单一的全局调度程序是否不好。

例如,假设我已经开发了一些组件和我的 Dispatcher。现在想导入第三方组件库,第三方的dispatcher不能直接导入因为应该只有一个Dispatcher(而且我已经开发了自己的Dispatcher)

一种解决方案是第三方可以将某些行为附加到 Global Dispatcher。但是,这也可能是有害的。因为他们使用的事件名称可能与我的冲突。比如他们和我使用同一个事件名称,我可能会偶然触发他们的事件。

有人对此有想法吗?谢谢!

【问题讨论】:

    标签: javascript facebook reactjs flux reactjs-flux


    【解决方案1】:

    每个通量应用程序应该有一个调度程序——换句话说,每个逻辑集的存储、操作和相关组件都应该 有一个调度员。

    如果您使用其他一些库,它可以在底层由通量或类似通量的系统进行管理,在这种情况下,它将使用自己的 调度程序.但是,它应该显示一个通过 props 和回调进行通信的公共 API,即使它在底层使用了通量或类似通量的实现;助焊剂内部不应外露。

    在大多数情况下,出于多种原因,我认为拥有一个将特定功能(例如,特定操作、存储等)添加到您自己的通量设置的库是没有意义的。但是,在理论上这确实是有意义的情况下,它可能应该是现有系统的“插件”行为,正如你所提到的,理想情况下命名空间是动作之类的东西。

    【讨论】:

      猜你喜欢
      • 2015-09-10
      • 2015-06-20
      • 2019-01-31
      • 2017-06-16
      • 1970-01-01
      • 1970-01-01
      • 2014-12-07
      • 2015-06-09
      相关资源
      最近更新 更多