当前位置:  开发笔记 > 编程语言 > 正文

双向数据绑定(Angular)与单向数据流(React/Flux)

如何解决《双向数据绑定(Angular)与单向数据流(React/Flux)》经验,为你挑选了1个好方法。

在上周,我一直试图理解双向数据绑定(Angular)和单向数据流(React/Flux)是如何不同的.他们说单向数据流更强大,更容易理解和遵循:它是确定性的,有助于避免副作用.然而,在我的新手眼中,它们看起来几乎相同:视图监听模型,模型对视图所做的操作做出反应.两者都声称模型是真实唯一来源.

任何人都能以可理解的方式全面解释它们之间的真正差异以及单向数据流如何更有益且更容易推理?



1> luanped..:

在Angular中你有很多控制器.一个示例是用户触发由控制器1管理的视图1上的操作.控制器1执行某些操作但也触发由另一个控制器2捕获的事件.控制器2更新$ scope上的某些属性,而视图2突然显示改变.

突然对View 1进行操作,更新View 2.如果我们现在抛出一些Async回调和更多的事件链,您可能不再确切知道您的视图何时/如何更新.

使用Flux/Redux,您可以使用单向数据流.视图永远不会更新模型,视图只能调度操作(更新意图),但让store/reducer决定如何处理更新.您可以更轻松地推断数据流,因为您可以轻松查看每个视图可以触发的操作.然后跟进以查看商店如何处理该操作,您可以确切地知道可以更新的内容.


在上面的Angular示例中,它与React/Flux中的说法不同:Store 2在View 1触发的操作上向调度程序注册回调,然后触发事件到View 2进行更新?它仍然是对View 1更新View 2的操作,在我看来,与我在Angular中实现它时相比,React/Flux中的这个实现并没有提供额外的价值.不确定"异步回调和更多事件链"将如何改变游戏.你能详细说明一下吗?
推荐阅读
coco2冰冰
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有