Может существовать проблема циклической зависимости из-за того, что AppModule
импортирует AppComponent
, а AppComponent
импортирует InjectionToken из AppModule
.
Перемещение токена в отдельные разделы решает проблему:
token.ts
import { InjectionToken } from '@angular/core';
export const BASE_URL = new InjectionToken<string>('BaseUrl');
app.module.ts
@NgModule({
providers: [{ provide: BASE_URL, useValue: { key: 'http://localhost' } }],
app.component.ts
constructor(@Inject(BASE_URL) configByToken) {
console.log(configByToken);
}