Closed dangreen closed 4 years ago
@dangreen редюсеры пока не трогать? Просто в задаче написано про экшены и сервисы
@Rustamhabibullin трогать
@dangreen, в сваггере, что-то не пойму на счет favorites, там на пут и на делит он возвращает в ответ полностью обновленный массив с lectureId? Или как? http://prntscr.com/psn9uv Так же для делита. Он же вроде должен мне возвращать в ответ итем который я удалил, или добавил, чтобы я потом смотрел по ид в стейте, ну и либо добавлял, либо удалял в зависимости от экшена.
Или если они мне в ответ отдают обновленный массив, то можно сделать так?
action
async fetchFavorites() {
const favorites = await userService.fetchFavorites();
this.setFavorites(favorites);
}
async addFavorite(lectureId: string) {
const favorites = await userService.addFavorite(lectureId);
this.setFavorites(favorites);
}
async deleteFavorite(lectureId: string) {
const favorites = await userService.deleteFavorite(lectureId);
this.setFavorites(favorites);
}
reducer
setFavorites(state: UserState, { payload }: ISetFavoritesAction) {
const favorites = payload && List(payload).map(Favorite);
if (!favorites) {
return state;
}
return state.set(
'favorites',
favorites
);
}
@Rustamhabibullin да, так можно в этом случае
Экшны добавлять в сегмент user
Сваггер: https://yoba.gdg-siberia.com/swagger/#/
Ветка:
component/Reservation-and-favorites-services