#3 Angular dependency injection framework. Providers. Полный обзор вариантов провайдеров

  Рет қаралды 9,558

Максим Гром

Максим Гром

Күн бұрын

Пікірлер: 57
@grommaks
@grommaks 4 жыл бұрын
Приветствую друзья! Я не тратил времени на просьбу поставить лайк и подписаться, по этому оставлю это в комментариях 🐶 Пишите, что еще хотели бы видеть у меня на канале? Хорошего настроения 😎😸✌️
@someinc
@someinc 11 ай бұрын
Возвращаюсь к этим видео спустя опыт и наконец-то понимаю о чём речь, спасибо за твой труд!
@mila4308
@mila4308 6 ай бұрын
спасибо большое за подробный, интересный, понятный курс 🤩🙏
@kseniaaslamova8994
@kseniaaslamova8994 10 ай бұрын
Спасибо за подробное описание, наконец, понятно, что все эти записи в модулях значат)
@aleksandrzelenskiy4000
@aleksandrzelenskiy4000 4 жыл бұрын
Просто смотреть не так эффективно, нужно самому все проделать. Очень нужный и сильный материал, спасибо!
@SALEMVSEM
@SALEMVSEM 3 жыл бұрын
спасибо за подробное и внятное объяснение столь сложной темы
@brucewayne_007
@brucewayne_007 4 ай бұрын
В 5 пункте не ясно почему сервис не injectable если по итогу инъекция происходит Очень круто!
@ДиляраСафина-г6ч
@ДиляраСафина-г6ч 4 жыл бұрын
Добавляю второй на канале женский комментарий. Спасибо за то что помогли лучше разобраться в DI)
@grommaks
@grommaks 4 жыл бұрын
Спасибо 🌺
@davidbaghdasaryan2486
@davidbaghdasaryan2486 4 жыл бұрын
Больше по архитектуре Ангуляр 👌🎉
@ibrmkoibrmko2493
@ibrmkoibrmko2493 Жыл бұрын
Спасибо. Очень подробно и внятно
@vladbelov5875
@vladbelov5875 3 жыл бұрын
Отличное и информативное видео! Спасибо вам большое!
@evgenlazeykin8537
@evgenlazeykin8537 4 жыл бұрын
Круто. Продолжай в том же духе)
@זינהמזיריצקי
@זינהמזיריצקי 3 жыл бұрын
Материал был очень полезен
@davidbaghdasaryan2486
@davidbaghdasaryan2486 4 жыл бұрын
Хороший контент спасибо. Ангуляр лучший
@antonasipenka2941
@antonasipenka2941 2 жыл бұрын
Спасибо! Замечательный материал
@nadyanaryvkina3576
@nadyanaryvkina3576 2 жыл бұрын
Оставлю комент за девушек) Спасибо за разбор!
@IngvarLosev
@IngvarLosev 2 жыл бұрын
Спасибо огромное!!!
@GGSoft2009
@GGSoft2009 2 жыл бұрын
Интепесно было бы Ваши лекции по поводу: Как работать с капчой: С datetimepicker; с локализацией на прымере; с RxJs; File upload; Как развернуть на сервере; По моему что-то изменилось в 14 версии (Будто не надо комп.-ов зарегистрыровать в NgModule) по подробнее если можно: Ваш ждет успех. Так что продольжайте
@mila4308
@mila4308 6 ай бұрын
девочки тоже есть)) у нас на проекте больше женского пола, чем мужского
@GGSoft2009
@GGSoft2009 2 жыл бұрын
Большое спасибо за труд!!! Это наверное можно применить к уже существующему проекту, где заказчик позже попросил поменять поведение класса к определенной области и при этом нужно оставить существующий клас тоже.
@grommaks
@grommaks 2 жыл бұрын
Это способ разворота зависимости, из-за чего можно как создавать изолированные модули, так и гибко подменять логику в существующих модулях
@regedam7559
@regedam7559 Жыл бұрын
Начиная с 14 версии Angular, можно использовать inject() метод внутри useFactory, вместо того, чтобы явно указывать зависимости в deps массиве и передавать их как параметры
@grommaks
@grommaks Жыл бұрын
Как оказывается, inject был доступен гораздо раньше. В release notes некоторые блогеры указывают что это пришло именно с 14 версией, но большинство блогеров ничего об этом не говорят. Официальные ноуты вроде тоже не упомянули эту фичу (еще не проверял) P.S. в 13 ангуларе использовал inject P.S.S. deps нужен не для того, чтобы потянуть зависимость, а для того, чтобы сказать DI что мы зависим от этих токенов. Если заменить на inject, то если зависимость еще не была решена, мы можем получить ошибку...причем при компиляции поведение может меняться и нет гарантии работоспособности. P.S.S.S. если на то нет везких причин, не стоит использовать inject, за счет удобства написания трех строчек кода, мы получим менее расширяемый код и потенциальные баги
@regedam7559
@regedam7559 Жыл бұрын
@@grommaks Спасибо за объяснения! Очень полезная инфа
@olegzozulia6898
@olegzozulia6898 10 ай бұрын
Додивився і вийшов покурити.
@denisbielishev
@denisbielishev 3 жыл бұрын
UseExisting используем, если нам нужен синглтон. Например: state manadger ngrx является единым источником правды (один объект). И мы хотим, чтобы у нас состояние всего приложения хранилось в одном месте.
@bukanaka
@bukanaka 2 жыл бұрын
Материал топовый, без него никакой Ингуляршек не будет самим собой
@grommaks
@grommaks 2 жыл бұрын
Но спустя больше года, я накопил дополнительной информации по этой теме) и мечтаю найти время, чтобы переснять с учетом всех правок)
@bukanaka
@bukanaka 2 жыл бұрын
@@grommaks Очень бы хотелось)
@galinagorbel
@galinagorbel 2 жыл бұрын
@@grommaks Найдите, пожалуйста!
@grommaks
@grommaks 2 жыл бұрын
@@galinagorbel Сразу как закончу плейлист по базовому ангулар буду переснимать смежные плейлисты, по DI, TS и другим темам, чтобы курс был полноценный и комплексный)
@galinagorbel
@galinagorbel 2 жыл бұрын
@@grommaks это будет какой-то новый плейлист или дополняете тот, который называется Первое знакомство с Angular?
@brucewayne_007
@brucewayne_007 4 ай бұрын
5 и 6 разве аналогичны? Насколько я понял, в 5 вручную передаём экземпляр сервиса в каждом месте, где инъекция будет, а в 6 поставили @injectable и автоматом всё будет делать ангуляр, создаст один общий 6?
@Renarus
@Renarus 2 жыл бұрын
Про useExisting правильно уже написали, что это singleton. А яркий пример где это может быть использовано, например получение ConnectionString к БД.
@grommaks
@grommaks 2 жыл бұрын
Это не синглтон, это означает что резольвер попробует найти созданный объект у родительских инжекторов, если не найдёт то создаст новый. Синглтон этого когда гарантируется один и только один инстанс некоторого класса
@denya_manunited
@denya_manunited 4 жыл бұрын
Сделай пожалуйста отдельное видео по декораторам в Nestjs или Angular. Но всё же предпочтительнее в Nest)) Пишу проект на Nest, а до этого с Angular не сталкивался. Вот и "смущают" меня эти декораторы
@grommaks
@grommaks 4 жыл бұрын
Гуд постараюсь снять видео на эту тему) Тут нужны уточнения 1) Не понятен сам механизм декоратора и фабрики декораторов? 2) Не понятны какие существуют декораторы в NestJs 3) Не понятно как создавать свои декораторы в NestJS 4) Свой вариант? :)
@denya_manunited
@denya_manunited 4 жыл бұрын
@@grommaks Больше всего 1-й и 3-й пункты
@grommaks
@grommaks 4 жыл бұрын
Denis Dyadya Круто Как раз планировал дописать уроки по TypeScript Декораторы это полностью фишка TypeScript Добавил в план, пралельно или после этого курса допишу уроки по TS где рассмотрю эту тему подробно с примерами 😉
@denya_manunited
@denya_manunited 4 жыл бұрын
@@grommaks ОК, спасибо заранее, буду ждать)
@ЕвгенийБондаренко-с5е
@ЕвгенийБондаренко-с5е 3 жыл бұрын
в конструкторе забыли модификатор доступа, см 1:44
@grommaks
@grommaks 3 жыл бұрын
Не забыл) Если нужно сохранить как свойство объекта, то нужно указывать, если будете использовать только в самом конструкторе, то не нужно указывать
@denisbielishev
@denisbielishev 3 жыл бұрын
const pageConfigValue: PageConfig = {title: `Вот бы перерыв сейчас :)`}
@grommaks
@grommaks 3 жыл бұрын
😹
@VendettaUkraina
@VendettaUkraina 4 жыл бұрын
useClass и useExisting еще понятно что можно использовать в юнит тестировании, мокая данные с сервисов и так далее. Но фабрики не совсем понятно, в одном файле хранится строка, и мы делаем DI в модуле импортируя этот файл туда, а в компоененте мы обратно иппортируем этот файл со строкой но уже с декораором @Inject. Почем нельзя просто импортировать этот файл со строкой сразу в компонент оминая манипуляции в модуле, на кой чёрт делать всякие фабрики в модуле при этом усложняя код и 2 раза импортируя файл. Я извиняюсь, но я действительно не вижу профиту в таких лишних манипуляциях, как по мне это какое то усложнение кода
@grommaks
@grommaks 4 жыл бұрын
@Inject используется чтобы внедрить токены. Например интерфесы только через токен можно, строки, массивы Выгода в том что их легко переопределить у себя в проекте
@bukanaka
@bukanaka 2 жыл бұрын
Что не является классом внедрить без @Inject() не получится, для этого и создаётся токен интерфейса, объекта и т.д., чтобы внедрить таким образом, иначе никак
@MovaClub
@MovaClub Жыл бұрын
хрєновєнькоє обьяснєніє
@grommaks
@grommaks Жыл бұрын
🥲
@RedkeiGost
@RedkeiGost 3 жыл бұрын
Строк для лохов. Шаблонные литералы для четких es6 и далее поцанчиков. [крутой смайл] Воспринимать как шутку.
@grommaks
@grommaks 3 жыл бұрын
Да упокоится с миром IE11 и его поддержка в 2021 году
@EvgeniySchem
@EvgeniySchem Жыл бұрын
В 13 ангуляре возникал ошибка "Property 'pageConfig' does not exist on type 'AppComponent'." при внедрении @Inject(PAGE_CONFIG) pageConfig: PageConfig. Получилось её решить добавлением модификатора доступа @Inject(PAGE_CONFIG) public pageConfig: PageConfig
Thank you Santa
00:13
Nadir Show
Рет қаралды 29 МЛН
ТЫ В ДЕТСТВЕ КОГДА ВЫПАЛ ЗУБ😂#shorts
00:59
BATEK_OFFICIAL
Рет қаралды 4,6 МЛН
What type of pedestrian are you?😄 #tiktok #elsarca
00:28
Elsa Arca
Рет қаралды 34 МЛН
How to Fight a Gross Man 😡
00:19
Alan Chikin Chow
Рет қаралды 15 МЛН
Angular dependency injection in depth -  Dependency providers (2021)
17:19
Dependency Providers in Angular | Advanced Angular
9:00
Web Tech Talk
Рет қаралды 3,4 М.
Angular Injection Token - When to Use It?
6:19
Monsterlessons Academy
Рет қаралды 13 М.
Angular Dependency Injection in Depth - Resolution modifiers (2021)
14:39
Thank you Santa
00:13
Nadir Show
Рет қаралды 29 МЛН