там есть сайд эффект и нету отписку, значит ищи ближайшую батарею. Если подписка там в текущей реализации не нужна. Значит она там не нужна и никаких доп обработок не нужно
ну вот есть у тебя getData().subscribe() сегодня у тебя под капотом там - return http.get() проект растет, понадобилось добавить кеш и добавляют shareReplay(). И вот уже все подписки на данный Observable перестают комплититься без unsubscribe. еще есть вариант, что Observable отработает позже, чем компонент будет уничтожен. Как себя поведет код в данной ситуации - сложно представить. А если код Observable вообще не будет эмитить ничего, поменяли где-то логику, что без выполнения некоторого условия эмита не будет - снова утечка.
Вот в том то и дело что тот кто добавляет shareReplay должен сделать takeUntil в пайпе, чтобы все кто на него подписан, имел теперь уже и отписку. А Если она до этого не нужна была то его наличие только лишний колбек которые работает не очевидно, почему он здесь, что он делает, зачем его добавили, почему он вызывается и наоборот почему он не вызывается когда ты ждешь его вызов с дебагере например. Добавлять не очевидные вещи очень плохая практика. Особенно в rx, где и так сложно понять откуда событие.
Вы ловко проигнорили вторую половину сообщения
Обсуждают сегодня