В прошлом понедельник я начал работать над моим первым сольным проектом! Основная функция, которую я включаю в мое приложение React, является интерактивной картой, что-то, чего я никогда не делал раньше. Я знал, что карта будет сложной Но у меня было достаточно уверенности в себе, что я могу сделать карту и действительно доказать себе, что только потому, что что-то кажется сложным, это не делает невозможным. Как и ожидалось, я столкнулся с некоторыми контрольными блоками, но они не были ни на что не могли понять, без какого-то хорошего оле моды, то есть пока Google не остановился, давая мне помощь, которую я искал.
После чистки Интернета безрезультатно я пошел, чтобы получить некому и помогать и попросить одного из моих тренеров, чтобы помочь отладить свой код. Они взяли один взгляд и сказал: «Вы делаете крючки?!» к которому я ответил «Может быть?» И пока мой тренер казался супер взволнованным об этом, я был очень запутанным. Что такое крючок? Как я не знаю, что я использую крючки? Итак, давайте погрузимся в реактивный крюки!
Реагистрационная документация удивительна и естественным образом – это первое место, которое я посмотрел, чтобы узнать больше о крючках. Первое, что я видел, это было:
Крючки – это новое дополнение в реакции 16.8. Они позволяют вам использовать состояние и другие функции реагирования без записи класса.
Хорошо, отлично! Но что это выглядит и как он используется? Вот где все весело! Крючки позволяют использовать состояние в функциональных компонентах, и они довольно легко читать и использовать. Ниже приведен пример функционального компонента с использованием крючка, который я буду половать и объяснить в меньших сегментах.
Выше вы увидите, что есть два Const Переменные с интересно выглядящим массивом и что-то называемое Уместите Отказ Всякий раз, когда есть атрибуты (например, имя пользователя и возраст) для компонента, который будет или может измениться, вам придется определить их, используя Const и положить его в массив. Внутри массивов вы увидите setusername и Setage которые являются функциями, которые похожи на SetState Отказ Последняя часть – Уместите , который представляет собой реактивный крюк, который мы импортировали на одну строку:
Уместите Это то, что позволяет нам изменить состояние имена пользователя и возраста в функциональном компонентах, не вызывая ничего для ошибки. Я все еще немного нечеткий о том, как он работает точно, но так как это просто, я не буду глубоко погружаться в то, как все работает под капотом.
Теперь, если мы смотрим на линии 7 по 17, мы можем видеть, как эти деконструированные «состояния» работают при оказании и изменении.
Это легко читает, но есть две вещи, чтобы указать:
1.
Поскольку мы находимся внутри функционального компонента, и ничто не передается на него из родительского компонента, нам не нужно вызывать состояние {ropps.username} или {props.age}, мы просто говорим {имя пользователя} или { Возраст} Как видно по линиям 10, 12 и 14.
2.
На строках 10 и 13 мы видим второе аргументы наших разрушенных массивов setusername и заправлять . setusername называется в Onchange и действует как this.setState ({}) Таким, во всякий раз, когда пользователь ввода в поле ввода, имя пользователя будет обновляться от «newuser» (что является значением по умолчанию, определенному в строке 4), и новое состояние будет установлено.
Что-то похожее происходит на линии 13. Setage Вызывается внутри OnClick и займет первое состояние состояния (которое равно 0, потому что мы определили возраст 0 в steSsate в строке 5) и добавьте 1 каждый раз, когда кнопка нажала.
Есть много, чтобы узнать о крючках, и я едва почесал эту поверхность здесь здесь. Если вы заинтересованы в том, чтобы узнать больше о крючках, проверьте эти видео, которые я использовал, чтобы помочь мне понять их и были вдохновения для этого блога:
Почему реагировать крюки? https://www.youtube.com/watch?v=eX_L39UvZes
React.js Крючки Clups Cound Course https://www.youtube.com/watch?v=-mlnbtsg_ww.
Оригинал: “https://dev.to/aliyalewis/intro-to-hooks-516b”