2

Facebook React 可以使用称为 Flux 的单向数据流模式,通过使用 Views、Actions、Stores 和 Dispatcher 为应用程序提供结构。

我为 Angular 找到了以下 Flux 库:

  1. ng-flux:https ://github.com/JustinWinthers/ng-flux
  2. 角度通量:https ://github.com/brentvatne/angular-flux
  3. 歌曲通量:https ://github.com/gah-boh/song-flux
  4. 这个样本:http: //victorsavkin.com/post/99998937651/building-angular-apps-using-flux-architecture

这些生产准备好了吗?

哪些计划迁移到 Angular2 并与组件路由器集成?

我似乎无法使用这些库中的任何一个找到任何大型应用程序示例。附加链接会很有用。

4

2 回答 2

0

我不是 ReactJS 的专家,但是我不确定将 Flux 与 AngularJS 集成是否真的是许多 Angular 开发人员的焦点。随着 2.0 的发布,Angular 团队继续使框架越来越自给自足,这样人们就不必将不同的库混在一起,而是可以只依靠 Angular 来完成手头的任务。

也就是说,这个通量角度库似乎在 1.x 版本中是稳定的,而且它似乎有很好的支持。我知道在处理 2.0 时它对您的情况没有帮助,但是,它看起来确实是一个足够可靠的 API;但是,话又说回来,也许我只是因为我能够使用 Angular 1.2 和 1.3 复制的功能而有偏见:)

于 2015-05-26T21:39:04.233 回答
0

我编写了 ng-flux,我不会说它已经准备好生产,因为我没有时间在各种项目中对其进行测试。但是我目前在一个相当大的企业级应用程序中使用它。我同意通量角有一个很好的团队,我会推荐他们的图书馆。无论如何,通量只是一种您可以自己整合的模式。任何基于 Angular 1.x 的方法的问题始终是 Angular 管理摘要周期的方式,如果您处理 Angular 命名空间之外的数据,有时您必须跳过箍以在后台更新视图。在 ng-flux 中,如果没有发生消化循环,我会强制执行消化循环。

Flux 作为一种模式对我来说效果很好,因为它使大型项目的调试和代码分离变得更加容易,所以我的目标是在已经有大量遗留 Angular 代码的项目中使用这种模式,并减少分类错误所花费的时间。这是一个包含大量计算的精算应用程序,因此有必要快速找到小的数据差异。编写 ng-flux 为我实现了这一点。

关于 Angular 2,我认为将 Facebook 的调度程序合并到您的项目中并允许它管理数据流会很容易。我认为一旦 Angular 2 准备就绪,根据我目前所读到的内容,使用第三方 JS 库应该会更容易——尤其是因为 Angular 2 将遵循更多类似于 React 的基于 Web 组件的架构。我什至看到了使用第三方路由器等会更容易(或更有机)的承诺......如果这是真的,我怀疑你是否真的需要一个库来管理你的基于通量的数据架构Angular 2 应用程序。在应用程序中简单地使用 Facebook Dispatcher 之类的东西作为单例(正确命名空间)对象应该是相当无缝的,您可以在 Angular 组件中引用该对象。

https://github.com/facebook/flux/blob/master/src/Dispatcher.js

于 2015-06-30T22:03:55.403 回答