Search
Write a publication
Pull to refresh
6
0
Aleksey Knyazev @DefeNder93

User

Send message

Спасибо! Сейчас подумал и понял, что я чаще всего пользуюсь combineLatest и switchMap. В последнее время еще forkJoin. А вообще я рекомендую в свободное время просматривать список операторов на https://rxjs.dev/ и таким образом расширять свой кругозор. Именно так я нашел sample и ignoreElements, а уже потом использовал их на проекте.

[удалено, не та ветка]

Кстати отписка и нюансы использования share в контексте Ангулара тянут на отдельную статью ( это как минимум ). Нет ли у вас желания написать ее? По моему отличная тема для дебюта на Хабре. Комментарии сложно найти и они не включают все кейсы, а вот отдельная статья со всеми нюансами была бы очень полезна сообществу. Что скажите?

или ставить перед ним takeUntil, что выглядит не очень

Тут уже вопрос вкусов и конкретной ситуации, я посчитал этот вариант безопасным и вполне корректным для своего примера.

По ссылке есть вся необходимая информация, в частности про shareReplay - если вы нажмете "Further reading" и перейдете на статью с объяснением. Внизу есть раздел An update.

Во-первых, takeUntil должен быть всегда последним.

Это не так, takeUntil ставится перед shareReplay и некоторыми другими операторами. Пруф.

Во-вторых, этот оператор надо добавлять только непосредственно перед подпиской, в пайпе обсервабла он не нужен

Я его поставил перед shareReplay по причине выше. К тому же в статье приводятся отдельные куски кода исключительно для примера. В этом случае вообще нет подписки, она за скобками.

Спасибо за комментарий. В контексте статьи я хотел показать что после получения первого значения нужно завершать стрим чтобы не тратить ресурсы на его обработку ( конечно если это подходит по логике ). Но в общем случае вы правы - нужно отписываться. Сделал поправку, добавил takeUntil(this.onDestroy$) в пример с take(1).

Согласен, заменил

Вы правы, тут я был неосторожен. На проекте мы часто используем стримы выдающие 1 значение, но конечно упоминание "холодности" было некорректно. Убрал это примечание, оно там вообще не нужно.

Почему не объявить тип группы а уже потом ее инициировать?

Так и делаем) В статье есть пример про явное указание типа формы.

Хорошее дополнение про тип-обертку для случая если модель совпадает с полями формы.

Привет! На здоровье)

Information

Rating
Does not participate
Date of birth
Registered
Activity

Specialization

Frontend Developer, Fullstack Developer
Lead
JavaScript
TypeScript
Angular
Redux