JavaScript 需要管理比任何时候都要多的 state (状态)
三大原则:
单一数据源
整个应用的 state 被储存在一棵 object tree 中,并且这个 object tree 只存在于唯一一个 store 中
State 是只读的
惟一改变 state 的方法就是触发 action,action 是一个用于描述已发生事件的普通对象。
这样确保了视图和网络请求都不能直接修改 state
使用纯函数来执行修改
为了描述 action 如何改变 state tree ,你需要编写 reducers。
它接收先前的 state 和 action,并返回新的 state