@kungfuboy
2016-07-05T09:15:51.000000Z
字数 563
阅读 868
React
Flux 是一种架构思想,专门解决软件的结构问题。它跟MVC 架构是同一类东西,但是更加简单和清晰。
首先,Flux将一个应用分成四个部分。
- View: 视图层
- Action(动作):视图层发出的消息或事件,比如点击事件
- Dispatcher(派发器):用来接收Action, 执行回调函数
- Store(数据层):用来存放应用的状态,一旦发生变动,就提醒Views要更新页面
Flux最大的特点,就是数据的单项流动
1, 用户访问 View
2, View 发出用户的 Action
3, Dispatcher 收到 Action,要求 Store 进行相应的更新
4, Store 更新后,发出一个"change"事件
5, View 收到"change"事件后,更新页面
每个Action都是一个对象,包含一个actionType属性(说明动作的类型)和一些其他属性(用来传递数据)
Dispatcher 的作用是将 Action 派发到 Store,只是用来派发,不应该有其他逻辑。可以把它看作一个路由器,负责在 View 和 Store 之间,建立 Action 的正确传递路线。
Dispatcher 只能有一个,而且是全局的。
Store 保存整个应用的状态。它的角色有点像 MVC 架构之中的Model。