Если вы начинаете в реакции и используете классы всесторонние в своем коде, вы, вероятно, заметили бы, что иногда нелегко отслеживать ваши государства, как их обновить, как их представлять и т. Д. Для меня, особенно, я был перегружен к ключевому слову «Это».
«Это здесь,« Это »там … Это был не очень приятный опыт. Но никаких забот. Крючки к спасению!
В этом посте я объясню, почему крючки настолько легко понять, и как это может сделать ваш код более читабельным, чем раньше. Я также собираюсь познакомить вас с некоторыми удивительными реагированными крючками!
🤔 Что такое крючки в любом случае?
Перед погружением в некоторые примеры важно сначала объяснить эту концепцию. Крюк – это функция, которая может позволить вам внутри функциях реагирования и функций жизненного цикла (соответственно к документации на реагирование, крючок позволит вам подключить к «состоянию реагирования).
Если вы работали с функцией в реакции раньше, иногда вам оказали необходимость добавить в него состояние. Перед крючками вы должны были преобразовать эту функцию в класс (позволяя использовать состояние и SetState ()). С крючками вы можете достичь того же результата в функциональном компоненте.
Реагистрационные крюки позволяют использовать состояние и другие функции реагирования без необходимости определения класса JavaScript. Это как возможность воспользоваться преимуществами чистоты и простоты чистого компонента и методов жизненного цикла состояния и компонента. Это потому, что крючки просто обычные функции JavaScript! Это поддается уборщику и менее Clunky Code.
Код также гораздо более читаемый, который является огромным преимуществом крючков. Для начинающих, которые просто начинаются с реагированными, легче их прочитать первый блок кода и легко увидеть именно то, что происходит. Со вторым блоком у нас есть некоторые посторонние элементы, и достаточно заставить вас остановиться и удивляться, что это за.
Еще одна великая вещь о крючках – это то, что вы можете создать свои собственные! Это означает, что множество государственной логики, которую мы привыкли повторно написать из компонента к компоненту, теперь мы можем теперь аннотация на кастомном крючке – и повторно использовать его.
❓ Зачем крючки
Мы знаем, что компоненты и текущий поток данных помогают нам организовать большие интерфейсы на небольшие, независимые, многоразовые части. Однако мы часто не можем сломать комплексные компоненты дальше, потому что логика является состоянием и не может быть извлечена на функцию или другой компонент. Иногда это то, что люди значат, когда говорят, что реагирование не позволяет им «отдельными проблемами».
Эти случаи очень распространены и включают анимацию, обработку формы, подключение к внешним источникам данных, и многие другие вещи, которые мы хотим сделать из наших компонентов. Когда мы пытаемся решить эти случаи использования только с компонентами, мы обычно заканчиваем:
- Огромные компоненты Трудно рефакторировать и тестировать.
- Дублированная логика между различными компонентами и методами жизненного цикла.
- Комплексные узоры Как рендеринг реквизиты и компоненты высшего порядка.
Мы думаем, что крючки – наш лучший удар по решению всех этих проблем. Крючки позволяют организовать логику внутри компонента в многоразовые изолированные единицы.
Крючки применяют философию реагирования (явный потомок данных и состав) внутри компонента, а не только между компонентами. Вот почему я чувствую, что крючки являются естественными подходящими для модели реагирования компонента.
В отличие от шаблонов, таких как рендеринг реквизиты или компоненты высшего порядка, крючки не вводят ненужные вложенные в вашу компонентное дерево. Они также не страдают от Недостатки микс Отказ
📌 Правила использования крючков
Прежде чем мы создадим наш собственный крюк, давайте рассмотрим несколько основных правил, которые мы всегда должны следовать.
- Никогда не называйте крючки изнутри петли, состояния или вложенной функции
- Крючки должны сидеть на верхнем уровне вашего компонента
- Только вызов крючков из функциональных компонентов React
- Никогда не называйте крюк от обычной функции
- Крючки могут вызывать другие крючки
📎 Ссылки
Заключение ❤.
Использование крючков помогает нам улучшить нашу конструкцию нашего кода и производительности нашего приложения, и я призываю вас также использовать его в ваших проектах. Компоненты класса не устанавливаются, поэтому никто не должен переписать компоненты на основе классов, используя крюки. Пожалуйста, обратитесь к мне за любые запросы относительно этого.
Надеюсь, вы найдете эту статью полезную. Happy Reacting ❄!
Оригинал: “https://dev.to/subhampreet/react-hooks-chapter-1-23jm”