Приветствую друзья! Я не тратил времени на просьбу поставить лайк и подписаться, по этому оставлю это в комментариях 🐶 Пишите, что еще хотели бы видеть у меня на канале? Хорошего настроения 😎😸✌️
Интепесно было бы Ваши лекции по поводу: Как работать с капчой: С datetimepicker; с локализацией на прымере; с RxJs; File upload; Как развернуть на сервере; По моему что-то изменилось в 14 версии (Будто не надо комп.-ов зарегистрыровать в NgModule) по подробнее если можно: Ваш ждет успех. Так что продольжайте
UseExisting используем, если нам нужен синглтон. Например: state manadger ngrx является единым источником правды (один объект). И мы хотим, чтобы у нас состояние всего приложения хранилось в одном месте.
5 и 6 разве аналогичны? Насколько я понял, в 5 вручную передаём экземпляр сервиса в каждом месте, где инъекция будет, а в 6 поставили @injectable и автоматом всё будет делать ангуляр, создаст один общий 6?
В 13 ангуляре возникал ошибка "Property 'pageConfig' does not exist on type 'AppComponent'." при внедрении @Inject(PAGE_CONFIG) pageConfig: PageConfig. Получилось её решить добавлением модификатора доступа @Inject(PAGE_CONFIG) public pageConfig: PageConfig
Большое спасибо за труд!!! Это наверное можно применить к уже существующему проекту, где заказчик позже попросил поменять поведение класса к определенной области и при этом нужно оставить существующий клас тоже.
Сделай пожалуйста отдельное видео по декораторам в Nestjs или Angular. Но всё же предпочтительнее в Nest)) Пишу проект на Nest, а до этого с Angular не сталкивался. Вот и "смущают" меня эти декораторы
Гуд постараюсь снять видео на эту тему) Тут нужны уточнения 1) Не понятен сам механизм декоратора и фабрики декораторов? 2) Не понятны какие существуют декораторы в NestJs 3) Не понятно как создавать свои декораторы в NestJS 4) Свой вариант? :)
Denis Dyadya Круто Как раз планировал дописать уроки по TypeScript Декораторы это полностью фишка TypeScript Добавил в план, пралельно или после этого курса допишу уроки по TS где рассмотрю эту тему подробно с примерами 😉
Начиная с 14 версии Angular, можно использовать inject() метод внутри useFactory, вместо того, чтобы явно указывать зависимости в deps массиве и передавать их как параметры
Как оказывается, inject был доступен гораздо раньше. В release notes некоторые блогеры указывают что это пришло именно с 14 версией, но большинство блогеров ничего об этом не говорят. Официальные ноуты вроде тоже не упомянули эту фичу (еще не проверял) P.S. в 13 ангуларе использовал inject P.S.S. deps нужен не для того, чтобы потянуть зависимость, а для того, чтобы сказать DI что мы зависим от этих токенов. Если заменить на inject, то если зависимость еще не была решена, мы можем получить ошибку...причем при компиляции поведение может меняться и нет гарантии работоспособности. P.S.S.S. если на то нет везких причин, не стоит использовать inject, за счет удобства написания трех строчек кода, мы получим менее расширяемый код и потенциальные баги
@@galinagorbel Сразу как закончу плейлист по базовому ангулар буду переснимать смежные плейлисты, по DI, TS и другим темам, чтобы курс был полноценный и комплексный)
Это не синглтон, это означает что резольвер попробует найти созданный объект у родительских инжекторов, если не найдёт то создаст новый. Синглтон этого когда гарантируется один и только один инстанс некоторого класса
useClass и useExisting еще понятно что можно использовать в юнит тестировании, мокая данные с сервисов и так далее. Но фабрики не совсем понятно, в одном файле хранится строка, и мы делаем DI в модуле импортируя этот файл туда, а в компоененте мы обратно иппортируем этот файл со строкой но уже с декораором @Inject. Почем нельзя просто импортировать этот файл со строкой сразу в компонент оминая манипуляции в модуле, на кой чёрт делать всякие фабрики в модуле при этом усложняя код и 2 раза импортируя файл. Я извиняюсь, но я действительно не вижу профиту в таких лишних манипуляциях, как по мне это какое то усложнение кода
@Inject используется чтобы внедрить токены. Например интерфесы только через токен можно, строки, массивы Выгода в том что их легко переопределить у себя в проекте
Что не является классом внедрить без @Inject() не получится, для этого и создаётся токен интерфейса, объекта и т.д., чтобы внедрить таким образом, иначе никак
Приветствую друзья!
Я не тратил времени на просьбу поставить лайк и подписаться, по этому оставлю это в комментариях 🐶
Пишите, что еще хотели бы видеть у меня на канале?
Хорошего настроения 😎😸✌️
Просто смотреть не так эффективно, нужно самому все проделать. Очень нужный и сильный материал, спасибо!
девочки тоже есть)) у нас на проекте больше женского пола, чем мужского
В 5 пункте не ясно почему сервис не injectable если по итогу инъекция происходит
Очень круто!
Добавляю второй на канале женский комментарий. Спасибо за то что помогли лучше разобраться в DI)
Спасибо 🌺
Оставлю комент за девушек) Спасибо за разбор!
Круто. Продолжай в том же духе)
Интепесно было бы Ваши лекции по поводу: Как работать с капчой: С datetimepicker; с локализацией на прымере; с RxJs; File upload; Как развернуть на сервере; По моему что-то изменилось в 14 версии (Будто не надо комп.-ов зарегистрыровать в NgModule) по подробнее если можно: Ваш ждет успех. Так что продольжайте
UseExisting используем, если нам нужен синглтон. Например: state manadger ngrx является единым источником правды (один объект). И мы хотим, чтобы у нас состояние всего приложения хранилось в одном месте.
Больше по архитектуре Ангуляр 👌🎉
Хороший контент спасибо. Ангуляр лучший
5 и 6 разве аналогичны? Насколько я понял, в 5 вручную передаём экземпляр сервиса в каждом месте, где инъекция будет, а в 6 поставили @injectable и автоматом всё будет делать ангуляр, создаст один общий 6?
Возвращаюсь к этим видео спустя опыт и наконец-то понимаю о чём речь, спасибо за твой труд!
Материал был очень полезен
В 13 ангуляре возникал ошибка "Property 'pageConfig' does not exist on type 'AppComponent'." при внедрении @Inject(PAGE_CONFIG) pageConfig: PageConfig.
Получилось её решить добавлением модификатора доступа @Inject(PAGE_CONFIG) public pageConfig: PageConfig
в конструкторе забыли модификатор доступа, см 1:44
Не забыл) Если нужно сохранить как свойство объекта, то нужно указывать, если будете использовать только в самом конструкторе, то не нужно указывать
const pageConfigValue: PageConfig = {title: `Вот бы перерыв сейчас :)`}
😹
спасибо за подробное и внятное объяснение столь сложной темы
спасибо большое за подробный, интересный, понятный курс 🤩🙏
Большое спасибо за труд!!! Это наверное можно применить к уже существующему проекту, где заказчик позже попросил поменять поведение класса к определенной области и при этом нужно оставить существующий клас тоже.
Это способ разворота зависимости, из-за чего можно как создавать изолированные модули, так и гибко подменять логику в существующих модулях
Спасибо за подробное описание, наконец, понятно, что все эти записи в модулях значат)
Додивився і вийшов покурити.
Строк для лохов. Шаблонные литералы для четких es6 и далее поцанчиков. [крутой смайл]
Воспринимать как шутку.
Да упокоится с миром IE11 и его поддержка в 2021 году
Спасибо. Очень подробно и внятно
Спасибо огромное!!!
Отличное и информативное видео! Спасибо вам большое!
Спасибо! Замечательный материал
Сделай пожалуйста отдельное видео по декораторам в Nestjs или Angular. Но всё же предпочтительнее в Nest))
Пишу проект на Nest, а до этого с Angular не сталкивался.
Вот и "смущают" меня эти декораторы
Гуд постараюсь снять видео на эту тему)
Тут нужны уточнения
1) Не понятен сам механизм декоратора и фабрики декораторов?
2) Не понятны какие существуют декораторы в NestJs
3) Не понятно как создавать свои декораторы в NestJS
4) Свой вариант? :)
@@grommaks Больше всего 1-й и 3-й пункты
Denis Dyadya Круто
Как раз планировал дописать уроки по TypeScript
Декораторы это полностью фишка TypeScript
Добавил в план, пралельно или после этого курса допишу уроки по TS где рассмотрю эту тему подробно с примерами 😉
@@grommaks ОК, спасибо заранее, буду ждать)
Начиная с 14 версии Angular, можно использовать inject() метод внутри useFactory, вместо того, чтобы явно указывать зависимости в deps массиве и передавать их как параметры
Как оказывается, inject был доступен гораздо раньше. В release notes некоторые блогеры указывают что это пришло именно с 14 версией, но большинство блогеров ничего об этом не говорят. Официальные ноуты вроде тоже не упомянули эту фичу (еще не проверял)
P.S. в 13 ангуларе использовал inject
P.S.S. deps нужен не для того, чтобы потянуть зависимость, а для того, чтобы сказать DI что мы зависим от этих токенов. Если заменить на inject, то если зависимость еще не была решена, мы можем получить ошибку...причем при компиляции поведение может меняться и нет гарантии работоспособности.
P.S.S.S. если на то нет везких причин, не стоит использовать inject, за счет удобства написания трех строчек кода, мы получим менее расширяемый код и потенциальные баги
@@grommaks Спасибо за объяснения! Очень полезная инфа
Материал топовый, без него никакой Ингуляршек не будет самим собой
Но спустя больше года, я накопил дополнительной информации по этой теме) и мечтаю найти время, чтобы переснять с учетом всех правок)
@@grommaks Очень бы хотелось)
@@grommaks Найдите, пожалуйста!
@@galinagorbel Сразу как закончу плейлист по базовому ангулар буду переснимать смежные плейлисты, по DI, TS и другим темам, чтобы курс был полноценный и комплексный)
@@grommaks это будет какой-то новый плейлист или дополняете тот, который называется Первое знакомство с Angular?
Про useExisting правильно уже написали, что это singleton. А яркий пример где это может быть использовано, например получение ConnectionString к БД.
Это не синглтон, это означает что резольвер попробует найти созданный объект у родительских инжекторов, если не найдёт то создаст новый. Синглтон этого когда гарантируется один и только один инстанс некоторого класса
useClass и useExisting еще понятно что можно использовать в юнит тестировании, мокая данные с сервисов и так далее.
Но фабрики не совсем понятно, в одном файле хранится строка, и мы делаем DI в модуле импортируя этот файл туда, а в компоененте мы обратно иппортируем этот файл со строкой но уже с декораором @Inject. Почем нельзя просто импортировать этот файл со строкой сразу в компонент оминая манипуляции в модуле, на кой чёрт делать всякие фабрики в модуле при этом усложняя код и 2 раза импортируя файл. Я извиняюсь, но я действительно не вижу профиту в таких лишних манипуляциях, как по мне это какое то усложнение кода
@Inject используется чтобы внедрить токены. Например интерфесы только через токен можно, строки, массивы
Выгода в том что их легко переопределить у себя в проекте
Что не является классом внедрить без @Inject() не получится, для этого и создаётся токен интерфейса, объекта и т.д., чтобы внедрить таким образом, иначе никак
хрєновєнькоє обьяснєніє
🥲