Знаю, что можно получить данные создав подписчика для потока rxjs. Пробовал так:
export class PlayersComponent implements OnInit {
players$: Observable<IPlayer[]>;
players: IPlayer[];
constructor(private store: Store<IAppState>) {
this.players$ = store.pipe(select(selectPlayers));
this.players$.subscribe(getSubscriber(this.players, "Players"));
}
.....
.....
kek() {
this.store.dispatch(new GetPlayers());
console.log('kek: Players -', this.players);
}
}
// создает подписчика для потока для сохранения значений в локальную переменную
// (скорее всего это неправильно), мне хотелось таким образом через *ngFor создать всех игроков
// не знаю как обработать поток players$ правильно в шаблоне
// планировал оттестировать и использовать в других компонентах
function getSubscriber(localStore: IPlayer[], streamName: string) {
return {
next: value => {
console.log('In sub ' ,value);
if (value) localStore = value;
},
error: err => console.error(err),
complete: () => console.debug(`stream ${streamName} - completed`)
}
}
Есть какие-нибудь хорошие статьи про жизненный цикл компонента ? Про то как он создается, как вызывается конструктор и какие параметры туда передаются.
Совсем недавно стал интересоваться Angular и NGRX.