Редуктор ngrx undefined initialState - PullRequest
1 голос
/ 16 марта 2020

Я обновляюсь до ngrx 8 и заметил, что в функции reducer тип параметра state может быть либо State, либо undefined

https://ngrx.io/guide/store/reducers#creating -функция-редуктор

export function reducer(state: State | undefined, action: Action) {
  return scoreboardReducer(state, action);
}

Есть ли причина для дополнительного типа undefined?

Ответы [ 2 ]

0 голосов
/ 16 марта 2020

При первом вызове редукторов он находится в состоянии undefined. Это сделано, поэтому вы можете указать значение состояния по умолчанию.

0 голосов
/ 16 марта 2020

Мое мнение таково, что это для проверки типов параметров по умолчанию. Чтобы установить initialState, вы можете сделать

export function reducer(state: State | undefined = {}, action: Action) {
  return scoreboardReducer(state, action);
}

Проверьте = {}. Если state не определено, оно будет равно {}.

Вы можете установить initialState, когда он не определен, или просто оставить его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...