redux 三大原则
时间: 2024-08-13 13:00:55 浏览: 57
Redux 是一款 JavaScript 库,用于管理应用程序的状态(state)。它遵循三个核心原则,也称为 Redux 定律:
1. 单一来源(Single Source of Truth, SST)[^4]:所有应用的状态都存储在一个全局的 store 中。这意味着任何时候,对于整个应用来说,只存在一个状态的副本,这样可以保证数据的一致性。
2. 可预测性(Predictability)[^4]:store 的改变必须通过纯函数(pure functions)来更新,即 state 转换函数(reducers)不依赖于外部状态变化,而是只基于传入的 action 和当前 state。这使得开发者能够准确预测何时以及如何状态会发生改变。
3. 唯一修改途径(Flux Standard Action pattern, FSA)[^4]:action 是状态变更的唯一入口点。它们包含了描述发生事件的数据以及执行操作所需的元信息(如类型 type 和 payload)。这种方式使得追踪状态更改历史变得容易,因为每个 action 都有一个明确的身份和结果。
在实践中,开发者通常会定义 reducers 来处理 actions,这些 reducers 接收旧的 state 和新的 action,返回一个新的 state。举个简单的例子[^4]:
```javascript
const initialState = { count: 0 };
function counterReducer(state = initialState, action) {
switch (action.type) {
case "INCREMENT":
return { ...state, count: state.count + 1 };
case "DECREMENT":
return { ...state, count: state.count - 1 };
default:
return state;
}
}
```
阅读全文