На протяжении всего моего путешествия по веб-разработке, до сих пор изучающего основы, такие как HTML, CSS и JS… Я построил React JS на этом пьедестале по какой-то причине и точно не знаю, почему. И это было так пугающе.

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

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

И я очень нервничал из-за следующего этапа моего путешествия!

Но по мере того, как я узнавал больше, я понял, что концепции React полезны для меня и как я учусь. Разбить все на более мелкие компоненты более крупного приложения? Это экспоненциально помогло мне лучше разбить и визуализировать, как все работает вместе, для лучшего видения приложения.

Вместо того, чтобы визуализировать это огромное приложение целиком и то, как все будет работать, просто сосредоточьтесь на конкретных компонентах и ​​на том, как они вписываются в общую схему всего. И как только я привык думать таким образом, все казалось гораздо менее пугающим.

Понимание различий между компонентами на основе классов и функциональными компонентами было для меня чем-то вроде кривой обучения, но как только я смог концептуально разбить их, это действительно прояснило для меня вещи. Они оба просто инструменты. Любой инструмент можно использовать для достижения одного и того же результата для одной и той же проблемы. Например, мне нужно выполнить функцию при первом рендеринге компонента. Хочу ли я использовать метод жизненного цикла componentDidMount или хук useEffect? Они оба просто средства для достижения одной и той же цели!

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

Одна вещь, которая действительно сбила меня с толку, — это концепция передачи переменных состояния и методов или свойств в целом от родительских компонентов к дочерним компонентам. Это было то, что мне было трудно понять поначалу. Первые несколько раз, когда я видел эту казнь, это было так неловко и смотрело на меня задом наперёд.

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

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

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