Комментарии 16
Странно почему в 2025 году в выборку не попал Redux-Saga. Конечно возможно потому что порог вхождения в Redux и без того низок, чего уж говорить еще и о Redux-Saga... Но все таки плюсы от саг недооценивать нельзя:
Возможность отмены действий.
Возможность прерывания действий.
Возможность управления списком асинхронных действий.
Представим задачу - дано массив ссылок на картинки, которые нужно загрузить на клиент. Задача сделать так, чтобы одновременно загружалось только 3 картинки. На сагах эта задача решается в несколько строк кода.
Redux saga - самый неудачный state management.
Вообще удивляет, кто ещё пользуется Redux в 2025? Пару лет назад уже про него все забыли.
Redux saga - самый неудачный state management.
Вот только пруфы не завезли, а так да, самый неудачный state management.
Вообще удивляет, кто ещё пользуется Redux в 2025?
Я пользуюсь Redux в 2025. Как и еще те, кто делают более четырех миллионов скачиваний в неделю. Пруфы тут https://www.npmjs.com/package/@reduxjs/toolkit
Пару лет назад уже про него все забыли.
Ну раз "все забыли", значит больше вопросов нет.
Я пользуюсь Redux в 2025
Тяжелый случай...Помянем.
Как и еще те, кто делают более четырех миллионов скачиваний в неделю
Да, а знаете что делают миллиарды мух каждый день? Вперед...
А ещё знаете что делают миллионы героинщиков каждый день? Ну и так далее по списку.
Вот только пруфы не завезли, а так да, самый неудачный state management.
Вот пруфы
https://stackblitz.com/edit/vitejs-vite-dspjoj?file=src%2FApp.tsx&terminal=dev
При определении претендентов, которые должны были войти в пятерку мы брали именно популярность технологии, то есть количество скачиваний за неделю. Так, например, пакет redux-saga на 28.02.2025 года скачали 1 138 513 раз. В связи с этим он не попал в нашу выборку.
По поводу плюсов саг, которые вы перечислили, - это безусловное преимущество данной технологии. Но в этом и соль выбора) Каждый подбирает решение, которое будет удовлетворять текущим потребностям проекта.
А где Tanstack Query? (бывший ReactQuery)
Это всё-таки не совсем стейт-менеджер общего назначения так сказать
SWR, получается, тоже не совсем state manager?
Получается, что так.
Но это не говорит о том, что на этих инструментах нельзя полноценно писать. Можно, конечно, с использованием стандартных реакт-хуков и это будет полноценно.
Вообще, в идеале определиться с терминологией, а что вообще такое стейт-менеджер и что он должен уметь делать.
Спасибо за ваши комментарии. Действительно, в начале статьи следовало определиться с определениями.
Итак, стейт-менеджер - это глобальное хранилище данных внутри приложения или сайта. Он помогает управлять данными внутри объекта состояния (state) и упрощает работу с кодом.
Чем он точно должен обладать?
- набор переменных,
- набор функций для изменения этих переменных,
- наблюдатель, который позволяет вам подписаться на изменения этих самых переменных.
Все остальные возможности, которые даруют нам перечисленные технологии - это разновидности имплементации стейт-менеджеров.
При подготовке статьи я пользовалась материалами, в которых были перечислены популярные пакеты для решения вопроса управлением состояния. Плюс посмотрела те, которые были у самой на слуху. Честно говоря, про react-query немного запамятовала.
Tanstack Query - 4 747 907 раз скачали наши коллеги за неделю. А это значит, что технология должна была занять в моем рейтинге почетное третье место. Думаю, это отличный повод задуматься о второй части статьи с перечислениями "второго эшелона":
Tanstack Query,
Jotai (1 339 512 скачиваний в неделю),
Recoil (559 315 скачиваний в неделю),
Effector (43 011 скачиваний в неделю),
Reatom (ему конечно еще следует подтянуть свои позиции😊 - 3 143 (скачиваний в неделю)),
и т.д.
Возможно и так
Но кстати, стейт-менеджер не обязательно может быть глобальным, тот же MobX может использоваться как локальный стейт. Скорее, стейт-менеджер - это система, позволяющая реализовывать слой вью-модели. То есть он занимается подготовкой данных для слоя отображения. Но, опять же, мнения могут быть разные.
Юзаю zestand чуть ли не с первого релиза, мне хватает, а редакс даже трогать больше не хочется, посматриваю ещё на эффектор но с дрками у них проблема потому не хочется возиться с ним
Reatom еще есть и effector для тех кому интересно что-то новое пощупать
Когда видишь в статье на первом месте редакс, то дальше ожидаю jquery. Столько боли в одном только списке топа. Не усложняйте себе жизнь уже. Самого главного тут не написали. А именно про react-query и trpc.
Топ-5 библиотек для управления состоянием React в 2025 году