У мене є два кутові проекти, які використовують такі версії:
- 9.0.0-наступний.6
- 8.1.0
У версії 9 я використовував це для надання та введення window
об'єкта:
@NgModule({
providers: [
{
provide: Window,
useValue: window
},
]
})
export class TestComponent implements OnInit {
constructor(@Inject(Window) private window: Window)
}
Що чудово працює.
Використовуючи такий підхід до версії 8, кинув попередження та помилки під час компіляції:
Попередження: Неможливо вирішити всі параметри для TestComponent…
Я вирішив це за допомогою одинарних лапок, наприклад:
@NgModule({
providers: [
{
provide: 'Window',
useValue: window
},
]
})
export class TestComponent implements OnInit {
constructor(@Inject('Window') private window: Window)
}
Яка різниця між обома версіями?
Яка різниця в кутових 8 і 9, що викликає цю річ?