В этом современном мире React у нас, как у разработчиков, есть множество вариантов инструментов управления состоянием, в этой статье я собираюсь объяснить, почему использование Redux может быть хорошей реализацией над Context API и простым способом реализовать его на вашем компьютере. app с помощью хуков, поэтому вы можете уменьшить количество шаблонов в своем коде.

Что такое Redux?

Согласно сайту redux:

«Redux - это контейнер с предсказуемым состоянием для приложений JavaScript.

Он помогает вам писать приложения, которые ведут себя согласованно, работают в разных средах (клиентских, серверных и собственных) и легко тестируются. Вдобавок ко всему, он обеспечивает отличные возможности разработчика, такие как редактирование кода в реальном времени в сочетании с отладчиком, путешествующим во времени.

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

Что такое Context API?

Согласно документации React.js:

«Контекст предоставляет способ передавать данные через дерево компонентов без необходимости передавать реквизиты вручную на каждом уровне».

Этот вариант проще благодаря тому, что он уже поставляется с React, разработчик может использовать его без установки каких-либо пакетов.

Теперь, когда вы знаете об этих двух типах способов передачи данных, почему использование Redux вместо Context может быть проще?

Короткий ответ заключается в том, что это будет не так просто с точки зрения «меньшего количества кода» или чего-то в этом роде, но с новым синтаксисом хуков он будет более «похожим», как если бы вы писали свой код с использованием контекста.

Установка зависимостей:

Во-первых, вам нужно будет установить 2 зависимости response-redux и redux, вы также можете установить redux-thunk, если хотите, но я расскажу об этом в другом посте.

(Небольшое примечание здесь, это руководство также может работать, если вы хотите понять некоторые основы Redux и то, как его использовать.)

Теперь вам нужно создать 2 новые папки: ваши действия и папки редукторов.

Действия: Действия - это полезные данные, которые отправляют данные из вашего приложения в ваш магазин. Они являются единственным источником информации для магазина .

Редукторы: Редукторы определяют, как изменяется состояние приложения в ответ на« действия , отправленные в магазин. Помните, что действия описывают только то, что произошло, но не описывают, как изменяется состояние приложения ".

Теперь, когда у нас есть эти папки, пора создать наш Магазин.

Магазин: В предыдущих разделах мы определили« действия , которые представляют факты о том, что произошло , и редукторы , которые обновляют состояние в соответствии с этими действиями».

А для этого перейдем в App.js и начнем процесс создания магазина и упаковки всего приложения под провайдером.

Пришло время создать корневой редуктор, здесь вы будете обрабатывать все редукторы, необходимые вашему приложению для правильной работы.

После создания вашего корневого редуктора нам нужно еще 2 вещи: наше действие и использование тех хуков response-redux для redux, о которых я вам говорил в начале поста.

Когда вы создали свое действие, теперь перейдите к той части приложения, которую вы вызовете, чтобы это действие было «отправлено» в магазин,

Dispatch: К функции dispatch () можно получить доступ прямо из магазина как « store.dispatch () , но, скорее всего, вы получите доступ к ней, используя такой помощник, как connect () react-redux. «

а затем поверх импорта «{useSelector, useDispatch}» из «react-redux», это то, что сделает все, чтобы все работало красиво и легко.

И это все! Теперь, если вам нужно добавить дополнительное состояние в свой магазин, добавьте редуктор в свой корневой редуктор, создайте действие и затем отправьте его, когда вам это нужно! С хуками, использующими Redux, это быстрее и легче понять, чем это было раньше.