Добрый день. У меня есть InjectionToken, который я вставляю в компоненты своего приложения, используя @Inject () в их конструкторах. Мне нужно получить значение указанного токена в моем AppRoutingModule, но я не смог найти способ его ввести. Возможно ли это сделать? Есть ли лучшая альтернатива? Мне удалось использовать значение InjectionToken в модуле, сделав его зависимым от поставщика:
{provide: MY_TOKEN, deps: [LOCALE_ID], useFactory: getMyTokenBasedOnLocaleId }
, но в этом случае мне нужно будет использовать его в маршруте. Концептуально это было бы так:
{
matcher: matchUrlBasedOnTokenValue,
deps: [LOCALE_ID],
loadChildren: () =>
import('./views/myView/view.module').then(mod => mod.ViewModule)
}
Что позволило бы мне вставить токен в функцию matchUrlBasedOnTokenValue()
. Однако в роутере нет свойства deps. Есть ли аналогичный способ сделать это или, в более общем плане, способ изменить поведение в RoutingModule на основе значения InjectionToken?
Спасибо!