В моем приложении Angular 2 я предоставляю объект окна, используя то, что описано здесь: Angular2 - How to inject window into an angular2 service.Угловой 2 AOT - свойство 'window' не существует для типа
Однако компилятор ngc, используемый для AOT, возвращает несколько ошибок. Сначала я должен был изменить способ, которым я обеспечить зависимость (обратите внимание на «окно»):
@NgModule({
providers: [
{ provide: 'Window', useValue: window }
],
...
})
export class AppModule {}
И в моем компоненте (обратите внимание на тип «любой»):
@Component({ ... })
export default class MyComponent {
constructor (
@Inject('Window') private window: any
) {}
...
Однако я все еще получаю следующее сообщение об ошибке брошенной НГК компилятором в моем модуле ngfactory:
Свойство «окна» не существует на типе
Опять все отлично работает с tsc-компилятором.