Я только что закончил 10-ю неделю учебного курса по программированию DevelopMe. Мы продолжали расширять наши знания о React, добавляя в наш код дополнительные уровни функциональности.

Это была тяжелая неделя, возможно, самая тяжелая (хотя я еще не начал неделю React-Redux…).

Мы боролись со следующим:

  • Методы жизненного цикла — монтаж и демонтаж компонентов.
  • AJAX — выполнение вызовов API
  • Асинхронное программирование — асинхронная обработка ответов.
  • Крюки — дифференциация функциональных компонентов на компоненты класса.
  • Поднятие состояния: компоненты узнают друг о друге для повышения интерактивности.

Наши лекции вел Адам Батлер, основатель Ordoo, имеющий около двух десятилетий опыта программирования. Он объяснил, почему некоторые из этих практик так трудно освоить, и как он внедрил их в свой код.

Он объяснил, что раньше разработчикам приходилось работать намного усерднее для того же результата. Использование React в полной мере не позволяет разработчику писать гораздо больше кода. В прошлом они использовали бы библиотеки JavaScript, такие как Jquery, которые заставляли вас отслеживать гораздо больше, тогда как использование React делает многое из этого за вас.

До этой недели я создал несколько компонентов, и хотя они работали нормально, им не хватало интерактивности. Было важно понять, как компоненты могут узнавать друг о друге.

Я сделал это, создав файл parent.js и файл child.js. Затем я переместил состояние в родительский компонент, чтобы он теперь отслеживал изменения.

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

Родительский файл может отображать несколько компонентов из дочернего, в этом примере ниже я импортирую два квадрата, каждый из которых имеет разные цвета при выборе:

К концу недели мы писали такие вещи, как компонент создать пароль, который проверял правильную длину, тип и комбинацию пароля.

Если с паролями что-то не так, цвет границы обоих полей ввода изменится.

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

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

Наступила наша последняя учебная неделя, и мне сказали, что она будет самой сложной, так что, скрестим пальцы, на следующей неделе будет последовательный блог, в котором будет подытожено то, чем я занимался!