Решили попробовать в проекте ngxs. Не сразу для всего проекта, а пока только для новых фич. Добавили ngxs и первые states для теста. Подключали ngxs как написано в документации и при подключении столкнулись с проблемой.
У нас в проекте мы используем APP_INITIALIZER токен, для настройки приложения в фабрике, в которой настраивается baseUrl (и не только) для api запросов.
Но как сказано в документации (
https://www.ngxs.io/advanced/life-cycle#app_initia...), инициализация store происходит раньше вызова фабрики.
Т.к. baseUrl еще не настроен, то вызовы в actions обращаются к localhost вместо azurewebsites.net и приложение падает с ошибкой при загрузке. Ставил брейкпоинты, Action вызывается раньше, чем проиходит вызов фабрики с настройкой.
Вопрос:
1. Можно ли как то отложить запросы в Action до первого реального вызова в проекте? Как я понимаю, сейчас, при первой загрузке приложения, происходит инициализация состояния и выполняются все api запросы, используемые в каждом Action. Я бы хотел этого избежать.
2. Какие есть варианты избежать запросов в Action до полной настройки приложения в фабрике?
Те решения, что указаны в документации никак не ложатся в наши условия.