Я использую избыточный с угловым 7. Я могу добавить значение к состоянию. Но как я могу подписаться на изменение значения состояния.
Вот код, который я пробовал
Селектор
export const selectProfessionalLearningTeacherFeature =
createFeatureSelector<any>('professionalLearningTeacher');
export const selectProfessionalLearningTeachers =
createSelector(selectProfessionalLearningTeacherFeature, (state) => state.professionalLearningTeacher);
Спортивный компонент
@Component({
selector: 'app-sports-practice',
templateUrl: './sports-practice.component.html',
styleUrls: ['./sports-practice.component.scss']
})
export class SportsPracticeComponent implements OnInit {
constructor(private fb: FormBuilder, private professionalLearningService: ProfessionalLearningService,private _store: Store<any>) {
this._store.select(selectProfessionalLearningTeachers)
.pipe(takeUntil(this._ngOnDestroy)).subscribe(item => {
console.log(item);
});
}
ngOnInit() { }
}
Вот мой компонент редуктора
const meta: any = '';
const ProfessionalLearningTeachers: any = '';
const INITIAL_STATE: any = {
meta,
ProfessionalLearningTeachers
}
export function ProfessionalLearningTeacherReducer() {
return function entityReducer(
state: any = INITIAL_STATE,
a: Action,
): any {
const action = a as EntityAPIAction;
if (!action.meta) {
return state;
}
let itemIndex = -1;
switch (action.type) {
case ProfessionalLearningTeacherApiActions.PROFESSIONAL_LEARNING_TEACHER_SAVE_SUCCEEDED:
return storeProfessionalLearning(state, action);
}
return state;
};
}
function storeProfessionalLearning(state, action): any {
return Object.assign({}, state, {
meta: action.meta,
ProfessionalLearningTeachers: action.payload,
});
}
Диаграмма состояний
Вывод на консоль
ссылка
В angular (v5), как мне прослушать, как мои приложения изменяют объект состояния Redux?
https://github.com/angular-redux/store/blob/master/articles/select-pattern.md