Я подозреваю, что в случае холодного субъекта Observable запущен, но "не охлаждается", то есть не завершается и не выдает новые значения.
В вашем случае это означает, что при переходе назад кваша страница, ваш getItineraries()
сервисный метод new call очень вероятно дает вам ту же ссылку на Observable, что и в первый раз.Он уже начал излучать, так как вы подписались на него в первый раз.
Но теперь вы не получите никакого назначения в свойстве компонента itineraries
, пока Observable не выдаст новое значение, которое может никогда не произойти в зависимости отчто он делает внутренне.
В этом случае у вас есть много возможных решений: попробуйте правильно отписаться, когда компонент уничтожен, переделайте ваш Observable в объект поведения ...
Если вы используете еготолько в вашем шаблоне вы также можете напрямую вызывать его с помощью асинхронного канала.Шаблон будет автоматически отменять подписку при уничтожении компонента.