单向数据流
Flux
Flux 倡导的是单向数据流的原则,在这种架构下,通过 Store 存放应用程序的状态数据。当应用状态发生变化时,Store 可以发出事件,通知应用的组件并进行组件的重新渲染。另外,Dispatcher 起到中央 hub 的作用,它为组件(View)和 Store 构建 起了桥梁。此外,你可以在组件上调用 action,它会向 Store 发起事件。Store 正是通过订阅这些事件,并根据事件的触发来改变 应用程序的内部状态的。
Signs you need MobX:
- Simple workflows
- 10k+ dynamic DOM elements
- Lots of cascading computations
- Same data / many contexts
Signs you need Redux:
- Complex workflows
- Users collaborate
- Many sources of data updates
- Need to rewind/replay state