я тоже против стор свалок, но тут в другом дело. Человек считает subject костылем и не понимает когда какие методы/операторы нужно использовать, и учится на примере стора
я хочу отказаться от стора если это возможно. но не понимаю как при этом влиять на поток данных с сервера, ведь пост запрос как минимум вернет один обьект, а то и вовсе - пустое тело 201.
а еще бывают ошибки корсов например которые не сервер выкинул которые всех подписчиков в том числе кликовых - у меня убивало. то есть если кнопка "добавить" вернула ошибку Корс, то кнопка больше не работает. я фигел с этих приколов
да, это если я сделаю .pipe(shareReplay()) я гарантирую что каждый кто подпишется получит последнюю копию. встает вопрос - а новую он как будет получать?
не понимаю вопроса. Через store$.next()? Через команды? Через эффекты? Какая вам сложность нужна, так и будет
не понимаю вопроса. Через store$.next()? Через команды? Через эффекты? Какая вам сложность нужна, так и будет
если у меня есть субьект, я могу сменить состояние, верно. но вы говорите это неправильный путь. у дамы DeborahK я видел где она написала кучу обсерваблов зависящих друг от друга и вообще без единого метода
если у меня есть субьект, я могу сменить состояние, верно. но вы говорите это неправильный путь. у дамы DeborahK я видел где она написала кучу обсерваблов зависящих друг от друга и вообще без единого метода
где я говорил что это неправильный путь? у меня тоже в коде куча обсерваблов зависящих друг от друга без единого метода
потому что каждая из add/update/delete должна менять состояние компонента, и еще раз менять когда придет с сервака ответ, и не боятся что он может не прийти
потому что каждая из add/update/delete должна менять состояние компонента, и еще раз менять когда придет с сервака ответ, и не боятся что он может не прийти
специально в статье целая глава "Обработка ошибок". Ну придет ошибка, ничего страшного, меняем состояние в сторе на "ошибка" и обрабатываем в интерфейсе как угодно (показываем уведомление, показывать кнопку повторить запрос, и т.д.)
специально в статье целая глава "Обработка ошибок". Ну придет ошибка, ничего страшного, меняем состояние в сторе на "ошибка" и обрабатываем в интерфейсе как угодно (показываем уведомление, показывать кнопку повторить запрос, и т.д.)
апи у меня отдает данные в спецификации. эта спецификация есть в слое который запросы делает. и ошибки из нее должны выдаться в форму которая вообще в UI
и второе - ошибки бывают браузерные - корсы чаще всего. которые почему-то валят подписку и вообще все что к ней имело отношение. вчера по кнопке "добавить" поймал "корс" - и кнопка больше не работала
явно запрос пост должен вызвать после себя создание холодного потока на список и еще с учетом фильтров
Нет, запрос не должен вызывать никаких сайд-эффектов. Создайте сабжекты на ваши add/delete/update, оберните в combineLatest вместе с состоянием фильтров и в switchMap делайте запрос.
Нет, запрос не должен вызывать никаких сайд-эффектов. Создайте сабжекты на ваши add/delete/update, оберните в combineLatest вместе с состоянием фильтров и в switchMap делайте запрос.
понял. я так пробовал в начале, но когда обернул в комбайн латест - я каждый раз получал последний сигнал на add/delete/update в итоге он выполнялся каждый раз - я уже добавил запись с id: 1, вызывают делит, он видит последний - и сначала добавляет id: 1 еще раз
потом я попробовал сделать zip()-ом, понимая что он не копирует последние значения, а ждет следующее в каждом потоке и вручную кидал пустые при каждой команде при помощи чуть ли не XOR