Я новичок в NGXS и пытаюсь полностью понять документы, чтобы я мог начать использовать его, зная, что я делаю.
Есть одна вещь, которую я не понимаю в этом фрагменте кода из здесь .
export class ZooState {
constructor(private animalService: AnimalService) {}
@Action(FeedAnimals)
feedAnimals(ctx: StateContext<ZooStateModel>, action: FeedAnimals) {
return this.animalService.feed(action.animalsToFeed).pipe(tap((animalsToFeedResult) => {
const state = ctx.getState();
ctx.setState({
...state,
feedAnimals: [
...state.feedAnimals,
animalsToFeedResult,
]
});
}));
}
}
Чуть ниже этого кода написано:
Вы можете заметить, что я вернул Наблюдаемую и просто нажал. Если мы
вернуть Observable, фреймворк автоматически подпишется на
это для нас , так что нам не нужно заниматься этим самим. Дополнительно,
если мы хотим, чтобы функция отправки магазина могла завершиться только
как только операция завершена, мы должны вернуть это, чтобы он знал
что.
Фреймворк подпишется на this.animalService.feed
, но почему?