gpt4 book ai didi

redux - Redux createStore 函数中使用的 initialState 是什么

转载 作者:行者123 更新时间:2023-12-04 22:44:00 24 4
gpt4 key购买 nike

全部:

当我阅读 Redux 的源代码时,在它的 createStore 中:

function createStore(reducer, initialState, enhancer) {
......
var currentState = initialState;
......
dispatch({ type: ActionTypes.INIT });
......
}

创建新 store 时,将 currentState 设置为 initialState,并在 init dispatch 中调用 reducer 更新默认 state 值。我不知道: 通常currentStatew 会从reducer 得到一个值,那么initialState 的目的是什么? ?

谢谢

最佳答案

通常,只需将初始状态指定为 reducer 默认参数,并让每个 reducer 自己管理它。

然而在某些情况下,您希望使用现有数据“水合”状态。例如,您可能将整个状态树保存在 localStorage 中。并希望在启动时从那里加载它,或者您可能是 rendering on the server ,并希望从 HTML 加载您保存在服务器上的初始状态。

在这种情况下,initialStatecreateStore()很有用,因为它让您可以选择对树中预先填充数据的某些部分进行水合。在这种情况下,它将“赢”到 reducer 默认状态,这通常是您想要的行为。状态树中存在于 initialState 中的部分将按原样使用,丢失的部分将从 reducer 中检索。这使得可以“恢复”状态的某些部分,但总是重新初始化其他部分。

希望this answer应该对这种技术提供更深入的解释。

关于redux - Redux createStore 函数中使用的 initialState 是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35928054/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com