В моем app.component [AppModule] в ngOnInit () я создаю подписку на свойство в моем состоянии, которое называется lastRouterUrl.Это работает так, что у меня есть редуктор, который обрабатывает действие ROUTER_NAVIGATION и обновляет это поле при создании нового состояния.
При любой навигации в AppModule вызывается редуктор, а lastRouterUrl в состоянии обновляется, а затемпри вызове вышеуказанной подписки.
Однако у меня также есть некоторые лениво загруженные функциональные модули, когда к ним обращаются и когда пользователь перемещается по маршрутам, внутренним к ленивому модулю, происходит следующее.Действие ROUTER_NAVIGATION запускается, редуктор запускается и возвращает новое состояние, хранилище обновляется (как я вижу в DevTools), однако подписка, созданная в корневом модуле, никогда не вызывается.
Кроме того, если я перемещаюВыше подписки на сам ленивый модуль все работает отлично!
Кажется, что любые рассылки и подписчики между ленивыми / нетерпеливыми границами модуля являются взаимоисключающими, т.е. отправка, которая происходит и приводит к изменению состояния, не уведомляетподписчик прослушивает это изменение, если этот подписчик находится в другом модуле.
Как можно исправить это?Это на самом деле не кажется мне правильным.Если я подписываюсь на изменение свойства в магазине, моя подписка должна вызываться независимо от того, был ли источник изменения в том же модуле или другом модуле и был ли этот другой модуль ленивым или нет.