Евгений, спасибо за видеоурок! Единственное, что немного сбивает с толку - вы путаете термины параметр функции и аргумент вызова. Пришлось раз 10 пересмотреть с 5:30 по 5:42, чтобы понять в итоге, что вы имеете в виду. Вы говорите "если в качестве параметра метод ничего не принимает" и тут же в методе объявляете параметр "e", а хотели, скорее всего, сказать что-то типа "если передать в метод render сам метод handleClick (а не его вызов с какими-либо аргументами), то в handleClick в момент клика придёт (в качестве аргумента) объект события".
@YauhenKavalchuk3 жыл бұрын
Согласен. Я уже учёл этот нюанс в будущих курсах
@beznamea95494 жыл бұрын
Вы прям очень хороши) Столько бесполезных туториалов на ютубе, все однообразные, неинтересные А здесь прям по факту, все четко, ясно и с примерами разными Огонь! Спасибо вам!!
@YauhenKavalchuk4 жыл бұрын
Спасибо за отзыв)
@Gavr-dev6 жыл бұрын
в этом уроке стало понятнее чем в предыдущих что такое пропсы и как их валидировать))
@YauhenKavalchuk6 жыл бұрын
Как я и говорил тема не совсем простая, нужно больше практических примеров для понимания, но рад что вы разобрались. т.к. многие её игнорируют и это очень зря.
@sonkn1ght4554 жыл бұрын
С момента как увидел onClick крутился вопрос - про назад к корням. И оп в конце ответ сразу получил))
@YauhenKavalchuk4 жыл бұрын
Да на инлайновый стиль написания функций в HTML похоже. Хотя по сути, это он и есть)
@ТатьянаЛ-л9э3 жыл бұрын
спасибо за видео!
@YauhenKavalchuk3 жыл бұрын
Пожалуйста
@МаксимНырков-у6г5 жыл бұрын
Есть момент, который я только сейчас заметил: const MyLink =({text, onClick})=>{ return( {text} ) }; В вашем видео функция не возвращает, т.е. нет return. (сразу пишет ошибку) У меня работает только как я выше написал с return. Можете объяснить этот момент?
@YauhenKavalchuk5 жыл бұрын
Перепроверьте такой синтаксис: const MyLink =({text, onClick})=> ({text});
@waden6664 жыл бұрын
Часто эта ошибка у меня появляется, это из за стрелочной функции, если мы пишем в ней { }, то должен быть return. (a, b ) => { return a + b; } или же (a, b ) => a + b;
@demik31065 жыл бұрын
Приветствую Евгений! Я так понимаю что у объекта MyLink.defaultProps нет доступа к пропсам и стейту класса App. К вам вопрос: - Как можно это организовать? Т.е. передать в пропсы по умолчанию допустим что-то из состояния или что-то из других пропсов?
@YauhenKavalchuk5 жыл бұрын
Просто передайти эти пропсы внутрь этого компонента.
@dmitriychupakhin79165 жыл бұрын
Если передавать стрелочные функции в пропсах плохая практика, то как лучше делать, если нужно передать аргумент? onClick={this.handleClick.bind(this, 'text')} так?
@YauhenKavalchuk5 жыл бұрын
Если нужно передать аргумент, то идеальный вариант - это создать ещё одну функцию где это и сделать. А сам вызов созданной функции повесить на элемент
@АлМ-ы8ъ6 жыл бұрын
Интересная схема по части использования стрелочной функции в качестве "вешателя" нескольких обработчиков на одно событие (прям как в гКвери например)
@YauhenKavalchuk6 жыл бұрын
Ну это не то что бы схема. Просто в большинстве своём используют именно такой подход)
@Nafumoto5 ай бұрын
Здравствуйте, насколько данный плэйлист актуален в 2024 году?
@YauhenKavalchuk5 ай бұрын
По сути это основы. Синтаксис поменялся, но концепции остались те же
@МаксимНырков-у6г6 жыл бұрын
пока вусё хорошо.
@YauhenKavalchuk6 жыл бұрын
Отлично!
@8malek4 жыл бұрын
Почему нельзя вешать события через addEventListener как в нативном js ? Это не будет работать или это просто плохая практика ?
@YauhenKavalchuk4 жыл бұрын
И первое и второе
@VashkaWeb5 жыл бұрын
Здравствуйте. Тут функция MyLink объявляется как MyLink = ( { } ) = ( ), место обычного объявления MyLink = ( { } ) = { }, в видео не услышал объяснения этого момента, единственная разница, которую я заметил, что в вашем варианте не надо прописывать return.
@YauhenKavalchuk3 жыл бұрын
Это сокращённый синтаксис стрелочной функции
@preegnees66644 жыл бұрын
А зачем мы отменяем дефолное поведение с помощью js, если мы можем вообще его не прописывать ?
@YauhenKavalchuk4 жыл бұрын
Не прописывать в этом кейсе можно. А что если человек столкнётся с такой проблемой на проекте? Я же должен в курсе показать разные варианты того, как нужно поступать
@preegnees66644 жыл бұрын
@@YauhenKavalchuk все понял, спасибо большое))
@3bbiani5 жыл бұрын
Пока самый главный вопрос: зачем это всё? С моей скромной точки зрения пока всё выглядит очень странно: есть JS, в котором реализовано все довольно логично и объемно, написать можно всё что угодно понятным языком, да те же события обрабатываются, как ты говоришь в конце урока, чисто в JS, что считается "правильным", притом есть всякие "правильные" вещи, типа addEventListener, которые позволяют спокойно навешивать несколько событий. И не только к событиям это относится, вообще ко всему, на мой взгляд. И модульность есть, и наследование, и все остальное. Что нам мешает весь этот функционал писать на JS? Но вот появляется супер-пупер-мега-экстра-библиотека JS, в которой синтаксис похож на синтаксис JS, как Майкл Джордан на Джеки Чана, наколочено столько дров, столько новых правил и к ним прикручено столько костылей, что голова идет кругом. А в комментах даже никто не удосуживается спросить: эээ, ребята, а зачем всё это? Короче, пока похоже на дурной сон, ущипните меня)))
@YauhenKavalchuk5 жыл бұрын
React вполне логичен и костылей он не содержит. Касаемо "Что нам мешает весь этот функционал писать на JS?" - это называется "писать" велосипед, т.е. придумывать аналог уже разработанной и проверенной функциональности. А касаемо философии React - это не просто синтаксис. Это компонентный подход к разработке интерфейса, реактивность и работа с VDOM, что оптимизирует и скорость и ресурсы связанные с ререндерингом. Это не просто синтаксис - а большой функционал "под капотом"