в вашей функции инициализации у вас есть следующее:
this.students$ = this.store.select(fromStore.getAllStudents);
Теперь этот getAllStudents заявляет следующее:
export const getAllStudents = createSelector(getStudentState, fromStudents.getStudents);
, что означает, что мы собираемся сначала получить что-то из getStudentState,передайте его из fromStudents.getStudents и верните возвращаемое значение.Давайте посмотрим, что делает функция getStudendState:
export const getStudentState = createSelector(getState, (state: StudentsState) => state.students);
хорошо, снова мы берем состояние из функции getState и возвращаем свойство студентов, давайте проанализируем это getState:
export const getState = createFeatureSelector<StudentsState>('student-list');
Все естьТеперь ясно, что мы получаем свойство списка студентов и можем вернуться к нашей цепочке ... если только ...
export interface StudentsState {
students: fromStudents.StudentState;
}
, как и ожидалось, когда мы получим список студентов свойство из нашего состояния, оно возвращает неопределенное, поскольку не существует, и в этот момент getState попытается получить доступ к state.students , что приведет к получаемой вами ошибке.