есть при использовании Redux можно не использовать useContext. Все состояние хранить в Redux. То есть я могу занести логику появления и закрытие меню по нажатию на кнопку в Redux. Насколько этот подход правильный?
Редакс это контейнер. Ui там точно не должно быть ) Тулкит просто более короткая и гармоничная запись того самого редакса. А в целом они все используют контекст под капотом. Если что-то просто где нет сложной логики локального состояния и сайд эффектов лучше используй контекст
я тоже недавно над этим задумывался, в общем, прикол стора в том, что допустим у тебя есть какой-то слайс и у тебя это состояние шарится на все приложение и из-за этого ты не можешь допустим сделать два независимых, но одинаковых хранилища состояния, а с помощью контекста это сделать можно, допустим у тебя есть контекст FormContext, в котором у тебя лежит редьюсер, и с этим контекстом ты можешь клипать сколько угодно одинаковых и независимых друг от друга форм, в общем я пришел к тому, что если у тебя какое-то уникальное состояние и оно нужно будет во всем приложении, то его нужно класть в стор, а если у тебя есть несколько компонентов расположенных недалеко друг от друга в dom дереве то почему бы не использовать контекст, также недавно наткнулся на библиотеку use-context-selector, благодаря ней компонент не будет лишний раз обновляться при изменении состояния в контексте
дополню про уникальные состояния - это к примеру тема, пользователь, access token и т.д.
В реакте нет средств для построения бизнес-логики, не надо её на нём писать
Не используем))
бизнес логика это имеется в виду управление состоянием или асинхронные запросы или то и другое?
Обсуждают сегодня