在2013年,Facebook让React亮相的同时推出了Flux框架,React的初衷实际上是用来替代jQuery的,Flux实际上就可以用来替代Backbone.js,Ember.js等一系列MVC架构的前端JS框架。
其实Flux在React里的应用就类似于Vue中的Vuex的作用,但是在Vue中,Vue是完整的mvvm框架,而Vuex只是一个全局的插件。
React只是一个MVC中的V(视图层),只管页面中的渲染,一旦有数据管理的时候,React本身的能力就不足以支撑复杂组件结构的项目,在传统的MVC中,就需要用到Model和Controller。Facebook对于当时世面上的MVC框架并不满意,于是就有了Flux, 但Flux并不是一个MVC框架,他是一种新的思想。
Flux的流程:
-
组件获取到store中保存的数据挂载在自己的状态上
-
用户产生了操作,调用actions的方法
-
actions接收到了用户的操作,进行一系列的逻辑代码、异步操作
-
然后actions会创建出对应的action,action带有标识性的属性
-
actions调用dispatcher的dispatch方法将action传递给dispatcher
-
dispatcher接收到action并根据标识信息判断之后,调用store的更改数据的方法
-
store的方法被调用后,更改状态,并触发自己的某一个事件
-
store更改状态后事件被触发,该事件的处理程序会通知view去获取最新的数据
深入了解可以点击链接进行更深入的学习
2013年,Facebook推出了React和Flux,旨在替代jQuery和MVC框架。React专注于视图层,而Flux提供了一种数据管理的新思路。Flux的流程涉及组件、store、actions和dispatcher,类似于Vue中Vuex的角色,但不完全等同。它确保了数据流的单向性,提高了复杂项目的可维护性。
3809

被折叠的 条评论
为什么被折叠?



