169 похожих чатов

Всем привет, подскажите пожалуйста. Есть спа, которое грузит с сервера

массив объектов, с дальнейшим их рендером. В спа подразумевается создание, изменение, удаление этих объектов. Какой подход наиболее корректный?
1. При загрузке объектов с сервера сохранять их в redux.
При взаимодействии с данными этих объектов/создании/удалении отправлять соответствующие запросы на сервера > успех > загружать с сервера обновленные данные
2. При загрузке объектов с сервера сохранять их в redux.
При взаимодействии с данными этих объектов/создании/удалении отправлять соответствующие запросы на сервер > успех > создать массив этих объектов с обновленными данными и диспатчить его в redux, избегая лишнего запроса на сервер (как мне кажется, на каждое изменение данных делать запрос с сервера с обновленными данными - лишнее действие).

Конечно, если есть еще более корректные варианты, с радостью приму к сведению

13 ответов

13 просмотров

Получать обновлённые данные в респонсе к реквесту(возможно, я не уверен, не баньте меня)

От организации зависит. Если id генерирует фронт, то можно сразу складывать в коллекцию и если ошибка откатывать назад. Если id генерирует бэк, то безусловно забирать объект из респонса и складывать в коллекцию. Если бэк не возвращает объект, то делать перезапрос данных

Просто прикинь, что произойдёт, если один пользователь удалит сущность, а второй обновит её через пару минут?

Alexey
произойдет ошибка же

а когда пользователь об этом узнает, если ты не запрашивашь данные с сервера на каждое обновление?

Alexey- Автор вопроса
Ivan 🧑‍🚀
а когда пользователь об этом узнает, если ты не за...

узнает в тот момент, когда он попытается это сделать. У меня на каждое действие идет запрос на сервер. Сохраняет изменение в объекте? put запрос, от статуса респонса уже происходит то или иное действие и тд

Alexey- Автор вопроса
Ivan 🧑‍🚀
а когда пользователь об этом узнает, если ты не за...

в первую очередь у меня идет запрос на сервер, а потом уже либо then либо catch

Alexey
узнает в тот момент, когда он попытается это сдела...

окей а теперь представь себе ситуацию, когда ты сидишь на работе, работаешь работу. обновляешь какую-то запись в CRMке, пыхтишь и тратишь внимание. нажимаешь “сохранить”, а тебе приложение отвечает — “не смогла, эта запись уже не существует”. после какого раза подряд ты схлопочешь нервный срыв и перестрелляешь коллег из кофемашины?

Ivan 🧑‍🚀
окей а теперь представь себе ситуацию, когда ты си...

у него там как будто серверная валидация же

Firstname Lastname
у него там как будто серверная валидация же

ну да. как только пользователь закончит работать над несуществующей записью, он сразу об этом узнает

Alexey- Автор вопроса
Ivan 🧑‍🚀
окей а теперь представь себе ситуацию, когда ты си...

картина смешная, ситуация страшная, как говорится) не знаю, влияет ли это, но у меня спа подразумевает работу в личном кабинете, где данные изменяет в текущий момент только один человек и на данные на сервере другой повлиять не может, для текущего пользователя

Alexey
картина смешная, ситуация страшная, как говорится)...

второй твой вариант называется optimistic updates (часть его — так точно), погугли в общем и целом — оба варианта верные, выбор зависит от специфики системы

Alexey- Автор вопроса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта