Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/26.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 通量+;反应与主干+;反应_Backbone.js_Reactjs_Reactjs Flux - Fatal编程技术网

Backbone.js 通量+;反应与主干+;反应

Backbone.js 通量+;反应与主干+;反应,backbone.js,reactjs,reactjs-flux,Backbone.js,Reactjs,Reactjs Flux,Flux+React与主干+React相比有哪些优势。对于一个庞大复杂的代码库,除了代码开发的简单性之外,还有什么性能上的差异吗 如果在使用主干网+反应的应用程序中,模型与反应视图之间存在1:1的关系,该怎么办?IMHO流量存储与主干网模型/集合并非不兼容。 只要将主干集合与Flux dispatcher集成,并允许它们发出事件以触发渲染,就可以使用主干集合作为Flux存储 我只是不确定主干模型首先是不可变的数据结构,从而使React更难优化渲染 我还想说,我从未真正发现所有这些主干模型/集合方

Flux+React与主干+React相比有哪些优势。对于一个庞大复杂的代码库,除了代码开发的简单性之外,还有什么性能上的差异吗


如果在使用主干网+反应的应用程序中,模型与反应视图之间存在1:1的关系,该怎么办?

IMHO流量存储与主干网模型/集合并非不兼容。 只要将主干集合与Flux dispatcher集成,并允许它们发出事件以触发渲染,就可以使用主干集合作为Flux存储

我只是不确定主干模型首先是不可变的数据结构,从而使React更难优化渲染

我还想说,我从未真正发现所有这些主干模型/集合方法都非常有用。在Flux体系结构中,API请求往往由操作创建者而不是由存储直接触发,因此允许多个存储侦听同一请求完成


Flux是构建React应用程序的架构师模式。因此,您可以在存储中使用主干模型和集合来获取和存储数据

如果想要使用just React的虚拟DOM特性,则无需使用React.js。有很多库,将虚拟DOM特性添加到应用程序()


我的建议:如果您将使用Flux模式,我强烈建议您使用(如果您正在构建同构应用程序,请不要忘记定义自定义同步功能)。基本上,将主干模型与React一起使用没有任何优势(主干很重,需要下划线,速度很慢;我使用下划线来代替)。

React的一个优点是它是不可知的—您可以将它与主干模型和集合一起使用,而不会出现问题

Flux是一种建议的体系结构,但我认为该模型与MVC相差太大,以至于最终不值得同时使用它们——使用React with Flux或React with主干模型和集合


我不建议使用主干模型/集合作为流量存储—它们不是一回事。主要原因是flux存储不能从外部进行变异-它不提供setter。流量存储会根据动作改变自身的状态。即使您使用主干模型作为存储,遵循“流量”方式,您的代码仍然有从存储外部直接操纵状态的开放可能性,这些状态可能被团队的其他成员误用,例如…

+1 Vetrenko Maxim关于主干和架构模式集成的回答。Flux是React应用程序的数据流模式,可以使用任何数据存储/模型框架

使用通量+反应的优点:

  • 更容易理解数据流
  • 更好的代码组织
  • 使用模型更容易调试数据问题
  • 从视图中划分数据存储/模型代码

有几种模型框架可供使用,我更喜欢www.js-data.io for React+Flux。

主干网的模型集合是可变的,而React的主题是不变性。因此,从技术上讲,使用主干+反应是一种反模式。
我使用了react+主干和react+通量。我肯定更喜欢react+flux,而不是其他模式。

flux是一种架构模式,它强制执行单向数据流。通量模式是通用的,并不特定于反应应用。使用Flux,可以防止定义不清的数据流和缺乏数据完整性


如果要选择主干,只要知道何时使用通量方式和主干方式,就可以将这两种方式结合起来

我还要补充一点,当我不再认为我的商店类似于MVC中的模型时,我更喜欢Flux,特别是因为它们绝对不应该像主干模型那样获取自己的数据。操作应与API对话,并且仅通过dispatcher将数据馈送到存储区:。如果你这样想的话,就会更清楚为什么主干模型不是很合适。我们在代码库的某些部分使用主干+反应(与反应集成的旧的遗留主干代码),在IMO中,它违背了反应的目的,即单向数据流的视图。主干网设计用于处理不一定是单向的模型。@fisherwebdev在评论线程中回答:“不,在存储中调用数据不会破坏[Flux]范式。”我完全同意!只要你不染上坏习惯,通量和主干线就能很好地协同工作。主干集合和模型是可变的,但这并不意味着您必须以这种方式使用它们。我已将我的收藏连接到flux dispatcher注册,这是我允许数据进入或离开存储的唯一方法。主干集合提供了一个很好的预构建存储,这样您就不必手动编写。此外,主干模型允许您对正在注入的数据实施模式。它为您的数据存储增加了很多复杂性。