@kttotto
пофиг на чем писать

Первые вызовы Action в ngxs происходят до вызова APP_INITIALIZER фабрики?

Решили попробовать в проекте 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 до полной настройки приложения в фабрике?

Те решения, что указаны в документации никак не ложатся в наши условия.
  • Вопрос задан
  • 25 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы