Reducer ngrx 未定义初始状态
2020-03-16
1408
我正在更新到 ngrx 8,我注意到在
reducer
函数中,
state
参数的类型可以是
State
或
undefined
https://ngrx.io/guide/store/reducers#creating-the-reducer-function
export function reducer(state: State | undefined, action: Action) {
return scoreboardReducer(state, action);
}
undefined
可选类型有什么原因吗?
2个回答
第一次调用 Reducer 时,其状态为
undefined
。
完成后,您可以为该状态提供一个默认值。
timdeschryver
2020-03-16
我的看法是,它用于默认参数的类型检查。要设置 initialState,您可以执行
export function reducer(state: State | undefined = {}, action: Action) {
return scoreboardReducer(state, action);
}
查看
= {
。如果
state
未定义,它将等于
{
。
您可以在未定义时设置
initialState
,也可以保留它。
AliF50
2020-03-16