Представьте себе компонент который соответствует SOLID принципам. В этом видео мы сделаем именно такой компонент, а именно компонент контекстного меню.
Благоларя ng-content мы передадим содержимое в компонент.
Благодаря template переменным будем открывать меню.
Благодаря HostBinding будем показывать и скрывать меню, смотря на внутреннее состояние компонента.
Благодаря HostListener будем слушать клики с window и с host елемента.
И благодаря :host / :host-context будем стилить хост.
И все это в одном видео, а в конце видео есть гайд и всего за несколько минут можно освежить информацию из урока.
==============================
Код готового урока:
https://github.com/MaksymGrom/angular-example/tree/host_binding_listener
==============================
Инструкция по установке angular проекта:
Вариант 1:
Пройдите плейлист:
https://www.youtube.com/watch?v=IrelRVjIttA&list=PL4rYLeYunVf07_wC6VR6F_YlajK-Q8vxV&index=1
Вариант 2:
Склонируйте https://github.com/MaksymGrom/angular-example/tree/start
Загрузите зависимости (npm install)
Можно запускать проект (ng serve)
==============================
Выбор редактора код это дело каждого, но в этом плейлисте я использую webstorm. Как настроить один из популярнейших редакторов ниже:
VS Code:
https://youtu.be/taTGYy-kgcE
WebStorm:
https://youtu.be/0kTzqdi5tpk
Не забываем что SQL важен независимо чем планируешь заниматься при веб разработке, даже если планируешь быть менеджером проектов.
Курс по SQL можно найти по ссылке:
https://www.youtube.com/watch?v=Bp_OHCzp7KM&list=PL4rYLeYunVf3DCrXe4XHdKAg8UJj0yzxG
Спасибо что продолжаете смотреть меня и радовать комментариями.
---- Соц сети
Телеграм, где можно узнать о новых видео и получать доп контент
https://t.me/webDevGromMaxChannel
P.S. В youtube я отвечаю быстрее чем в telegram, буду рад комментам в youtube
----
Чтобы поддержать канал
1) Можно поставить лайк (или дизлайк, если не понравилось видео)
2) Оставить комментарий более 5 слов
3) Досмотреть видео до конца (так удержание будет выше и мне это поможет в продвижении)
4) Оставить отзыв в комментариях, что можно улучшить в видео, чтобы не хотелось его закрывать
#grommax #angular #host
Материально поддержать канал можно следующим способом
1) Перевод на карту https://send.monobank.ua/7oqmsFg3Y
2) Пройти опрос, чтобы помочь выбрать подходящие варианты поддержки
https://forms.gle/ZbFCKJSpDNYp4AMC6
Оглавление
00:00 - Введение
00:26 - Подготовка к уроку
00:55 - HostBinding
02:02 - :host-context() стили хоста
02:41 - Открытие меню по кнопке
03:37 - :host стили контекстного меню
04:52 - HostListener события хоста
06:17 - window HostListener события документа
07:15 - Закрытие меню по клику снаружи меню
09:34 - Запрет всплытия событий click из меню
10:16 - ng-content динамический контент меню
12:43 - Краткий гайд