в 2023 году?
контекст: https://habr.com/ru/companies/jugru/articles/315806/
Если кратко:
Вместо: юзер нажал на лайк - идет запрос - случае успеха счетчик увеличивается на 1
Должно быть: юзер нажал на лайк - счетчик обновился - идет запрос на сервер - в случае успеха ничего не происходит - в случае неудачи счетчик откаывается назад
это когда мы данные не перезапрашиваем, а модифицируем уже готовые на клиенте?
ну спорная тема конечно. Но сильно проблемная. Например что делать если пользователь начнет быстро кликать по кнопке счетчика? оправлять запросы? а мы еще ждем ответа на предыдущий запрос. короче проблем от этого еще может больше быть чем пользы
"Например, исследование показывает, что 78% потребителей разрабов ощущают негативные эмоции из-за медленных или ненадёжных сайтов. своего говнокода" Fix
просто выключаешь кнопку пока ответ не пришел
Самое крепкое здоровье у людей, у которых отсутствует саморефлексия
ну мы же типа хотим без ожидания как будто стэйт локальный а ты про какие-то отключения кнопок пишешь...
в чем проблема, обнови локальный, пошли запрос, выключи кнопку, дальше все по оптимистик когда придет
а без отключения кнопки? типа я хочу покликать без ожидания раз 50 и что бы число 50 было
Изменять локальный стейт, и сделать ожидание отправки запроса через сек после бездействия с текущим значением счетчика?
угу и вот насколько оно все это усложнит, и насколько оно нам такое надо
мудреный кейс, сложность конечно добавит
Можно придумать чё то типо батчинга, кликай сколько влезет, устанешь, отправим запрос
вообще видел одним хуком debounce все реализуется, так что сложности не много
Обсуждают сегодня