Size: a a a

2020 June 26

SK

Sam Kshniakin in Angular Kyiv
Либо через родительский компонент, либо через общий сервис с подпиской
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Sam Kshniakin
Либо через родительский компонент, либо через общий сервис с подпиской
через родительский компонент - не подходит. Через сервис пробовал behaviorsubject, но при переходе дает только значение по-умолчанию, а не измененное значение.
источник

SK

Sam Kshniakin in Angular Kyiv
ну в одном компоненте ты прокидываешь значения при их изменении в календаре, в другом подписываешься на них. и все это через один Subject
источник

SK

Sam Kshniakin in Angular Kyiv
ток не забудь потом отписаться
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Sam Kshniakin
ну в одном компоненте ты прокидываешь значения при их изменении в календаре, в другом подписываешься на них. и все это через один Subject
В компоненте где находиться календарь я написал:   onClickOutside(event: any) {
   if (!this.rangeDates[1]) {
     this.rangeDates = [
       this.rangeDates[0],
       this.rangeDates[0]
     ];
   }

   this.taskService.setMainRangeDates(this.rangeDates);
 }
В сервисе написал:
private _mainRangeDates: Date[] = [
   moment().startOf('month').toDate(),
   moment().endOf('month').toDate()
 ];

 private dateSubject$ = new BehaviorSubject<Date[]>(this._mainRangeDates);
 mainRangeDatesChange$ = this.dateSubject$.asObservable();

 // Установить значение
 setMainRangeDates(date: Date[]) {
   this._mainRangeDates = date;
   this.dateSubject$.next(this._mainRangeDates);
 }
Но при подписки на mainRangeDatesChange$ в компоненте я получаю значение по -умолчанию. Хотя при изменении в календаре значения в setMainRangeDates я получаю правильное значение.
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Sam Kshniakin
ток не забудь потом отписаться
Это я понимаю.
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Sam Kshniakin
ну в одном компоненте ты прокидываешь значения при их изменении в календаре, в другом подписываешься на них. и все это через один Subject
т.е. главная пока проблема не сохраняется последнее значение сервис дает только значение по-умолчанию
источник

O

Oleksandr in Angular Kyiv
когда делаеш set, в сервис прилетает новое значение?
источник

ОС

Олександр Савуловськ... in Angular Kyiv
да
источник

ОС

Олександр Савуловськ... in Angular Kyiv
Спасибо всем. Разобрался. Причина была сервис был зарегистрирован в модуле. Удалил и все заработало!!!
источник
2020 June 27

Sergey Фrolov in Angular Kyiv
На gdg только что был отличный доклад по ангуляр
https://youtu.be/G4qftFVsJj8
источник
2020 June 28

B

Bohdan in Angular Kyiv
Ссылки не работают
источник

Sergey Фrolov in Angular Kyiv
Bohdan
Ссылки не работают
Перезаливают, думаю будет уже утром на канале
источник
2020 June 30

AS

Alex S in Angular Kyiv
мужчины
а вы Apollo и ангуляр (редакс) как уживаете?
а то говорят о конфликтах стейта и тип что стейт аполло убирает необходимость в редаксе
источник

AS

Alex S in Angular Kyiv
@matochu можешь что подсказать плс?
источник

AS

Alex S in Angular Kyiv
я знаю, что ты гуру этого дела)))
источник

Sergey Фrolov in Angular Kyiv
Да, можно обойтись локальными резолверами в аполло
источник

Sergey Фrolov in Angular Kyiv
Но тут нужно смотреть, сколько и чего приходится именно на этот самый стейт. Если там чисто id, то конечно хватит
источник

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

AS

Alex S in Angular Kyiv
А если хранить какой-то UI стейт? У меня много кастомных штук, а не просто данные
источник