Наш дипломный проект, nimblecode, начал разработку, и я гордился тем, что моя команда выбрала React, когда ни у кого из них не было опыта работы с ним. Мы понимали риски, так как большинство других команд перестраховались и выбрали Angular. Я был рад создать полноценное приложение с React и глубже погрузиться в текущую «горячую» интерфейсную среду. Поскольку у меня был некоторый предыдущий опыт (проект MVP) с React, я поставил перед собой задачу настроить наш первоначальный сервер/клиент, пока мои товарищи по команде изучали React. К сожалению, мне пришлось немало поучиться, чтобы настроить Webpack, Babel, ES6 и React Router. Тем не менее, самая сложная технология для изучения была еще впереди, так как в конце концов мы решили включить Redux в наше приложение.

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

Подводя итог тому, как на самом деле изменить глобальное хранилище, вы должны:

  1. Преобразуйте компонент в контейнер (для любого компонента, в котором вы хотите использовать Redux)
  2. Создайте генератор действий, который возвращает действие
  3. Вызовите действие (во многом аналогично запуску события в Backbone). Действия транслируются на все редукторы в вашем приложении.
  4. Создайте редуктор для прослушивания определенного действия. Редуктор изменяет фактическое хранилище, передавая объект полезной нагрузки. Более одного редюсера может прослушивать определенное действие.

Как видите, это не так просто, как просто написать литерал объекта. Тем не менее, как только вы запустите Redux, написание приложения React станет НАМНОГО проще. Вы значительно уменьшите потребность в передаче обратных вызовов, поскольку реквизиты и «родственные» компоненты смогут «общаться» друг с другом намного проще.

Хорошей новостью является то, что в Интернете есть множество ресурсов, чтобы узнать о Redux. Трудная часть будет заключаться в том, чтобы найти хороший учебник / документы, которые вы найдете достаточно простыми для понимания. Многие рекомендуют документы Дэна Абромова и видеокурс, выложенный на умник. Хотя они хороши и бесплатны, я обнаружил, что курс для яйцеголовых слишком сложен для новичков, таких как я. Мне посоветовали пройти курс Стивена Гриндера Modern React with Redux на Udemy, и он оказался НАМНОГО более доступным. К сожалению, этот курс платный, но Udemy постоянно проводит большие скидки, и курс можно найти примерно за 15 долларов. Что бы вы ни выбрали, учиться будет сложно, но оно того стоит!