Size: a a a

2020 October 17

R

Roman in Angular Kyiv
Alex Okrushko
А зачем ему это знать?
есть компонент с формой. он может вызываться из главного меню со своим роутом, а можно этот же самый компонент вызвать и в модалке из любого места в приложении. вся логика компонента одинаковая, за исключением даннами с аналитикой откуда именно была отправлена форма
источник

Sergey Фrolov in Angular Kyiv
Roman
есть компонент с формой. он может вызываться из главного меню со своим роутом, а можно этот же самый компонент вызвать и в модалке из любого места в приложении. вся логика компонента одинаковая, за исключением даннами с аналитикой откуда именно была отправлена форма
Я бы тогда делал явную передачу ключа, раз это связано с аналитикой.
Как выше предложил @rocked4
источник

Sergey Фrolov in Angular Kyiv
Иначе нужно будет эту логику в компоненте хранить, что не совсем ок
источник

R

Roman in Angular Kyiv
Sergey Фrolov
Я бы тогда делал явную передачу ключа, раз это связано с аналитикой.
Как выше предложил @rocked4
Принял, спасибо. Буду пробовать)
источник

Sergey Фrolov in Angular Kyiv
Можно попробовать кстати, сделать тогда через сервис-провайдера для компонента.
Если они есть, то их уже можно инжектить по дереву.
И если только они занимаются аналитикой над компонентами, то там проще сделать обмен данными
источник

Sergey Фrolov in Angular Kyiv
Тогда нужно будет просто правильно инитить их в компонентах, передавая нужные ключи. И дальше вссю логику уносить в сервисы.
источник

AO

Alex Okrushko in Angular Kyiv
Sergey Фrolov
Можно попробовать кстати, сделать тогда через сервис-провайдера для компонента.
Если они есть, то их уже можно инжектить по дереву.
И если только они занимаются аналитикой над компонентами, то там проще сделать обмен данными
+1
Поэтому спрашивал "зачем"? :)
источник

R

Roman in Angular Kyiv
Sergey Фrolov
Можно попробовать кстати, сделать тогда через сервис-провайдера для компонента.
Если они есть, то их уже можно инжектить по дереву.
И если только они занимаются аналитикой над компонентами, то там проще сделать обмен данными
Да, тоже вариант. Спасибо за идею)
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Добрый день. Презентация очень хорошая. Спасибо. Побольше таких бы с реальными примерами.
В презентации Вы демонстрируете на примере сервис синглтон,  в котором используете такую конструкцию
http.post(url).subscribe(arr => this.itemSubject.next(arr))
. Иногда такого механизма будет достаточно для работы.  Вопрос такой:  как быть с отписками не будет ли утечек памяти т.к. сервис будет существовать весь период жизни приложения? Спасибо.
источник

Sergey Фrolov in Angular Kyiv
Олександр Савуловський
Добрый день. Презентация очень хорошая. Спасибо. Побольше таких бы с реальными примерами.
В презентации Вы демонстрируете на примере сервис синглтон,  в котором используете такую конструкцию
http.post(url).subscribe(arr => this.itemSubject.next(arr))
. Иногда такого механизма будет достаточно для работы.  Вопрос такой:  как быть с отписками не будет ли утечек памяти т.к. сервис будет существовать весь период жизни приложения? Спасибо.
ComponentStore по идеи должен жить столько, сколько живет компонент. Также и со всему BehaviorSubject в компонентах
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Sergey Фrolov
ComponentStore по идеи должен жить столько, сколько живет компонент. Также и со всему BehaviorSubject в компонентах
Я имел ввиду еще до того как началась речь про ComponentStore. То приложение, которое было переделено с использованием ComponentStore.
источник

AO

Alex Okrushko in Angular Kyiv
Олександр Савуловський
Добрый день. Презентация очень хорошая. Спасибо. Побольше таких бы с реальными примерами.
В презентации Вы демонстрируете на примере сервис синглтон,  в котором используете такую конструкцию
http.post(url).subscribe(arr => this.itemSubject.next(arr))
. Иногда такого механизма будет достаточно для работы.  Вопрос такой:  как быть с отписками не будет ли утечек памяти т.к. сервис будет существовать весь период жизни приложения? Спасибо.
Спасибо.
в тех примерах отписка не нужно потому что:
1) сам то сервис он сингтон и будет жить всю жизнь аппликации
2) подписка идет к http, которые закрываются сами после респонса

Я этим примером поводил с реактивному походу, у которой уже неплохой, но остается несколько несколько недостатков, в том числе race conditions.
источник

AO

Alex Okrushko in Angular Kyiv
Sergey Фrolov
ComponentStore по идеи должен жить столько, сколько живет компонент. Также и со всему BehaviorSubject в компонентах
Я действительно рекомендую такой подход 👍
Но я более чем уверен, что ComponentStore будет во многих местах использоваться с providedIn: 'root' 😐 - но хотя бы так сначала.
источник
2020 October 18

VB

Valik Bondaruk in Angular Kyiv
Всем привет, подскажите пожалуйста куда копать.
Вызываю this.viewportScroller.scrollToPosition(this.scrollPosition) в ngAfterViewInit, но
работает только из сеттаймаутом.
Думаю что *ngFor не успевает отрендерить все элементы, когда уже вызывается this.viewportScroller.scrollToPosition.
источник

O

Oleksandr in Angular Kyiv
спробуй визивати скрол пімля отримання масива який перебираєш в ngfor
источник

IS

Igor Shturmov in Angular Kyiv
народ, а есть ссылка на доклад по монорепе? типа когда юзать, бест практисис и тд
источник

D

Dima in Angular Kyiv
источник

Sergey Фrolov in Angular Kyiv
Igor Shturmov
народ, а есть ссылка на доклад по монорепе? типа когда юзать, бест практисис и тд
https://youtu.be/9XnUw8_TkOI
Я тут немного рассказывал
источник

IS

Igor Shturmov in Angular Kyiv
Спасибо
источник

IF

Igor Filippov in Angular Kyiv
Глянул по диагонали пару статей. Так и не понял в чем смысл этого тренда
источник