3

私の Angular 2 アプリケーションでは、ここで説明されているものを使用してウィンドウ オブジェクトを提供します: Angular2 - How to inject window into an angular2 service

ただし、AOT に使用される ngc コンパイラはいくつかのエラーを返します。まず、依存関係を提供する方法を変更する必要がありました (「ウィンドウ」に注意してください)。

@NgModule({        
  providers: [
    { provide: 'Window',  useValue: window }
  ],
  ...
})
export class AppModule {}

そして私のコンポーネントでは(タイプ「any」に注意してください):

@Component({ ... })
export default class MyComponent {
    constructor (
        @Inject('Window') private window: any
    ) {}
...

ただし、モジュール ngfactory の ngc コンパイラによってスローされる次のエラーが引き続き発生します。

プロパティ 'window' はタイプに存在しません

ここでも、すべてが tsc コンパイラで正常に動作しています。

4

2 に答える 2

2

最後に、ここで説明されていることを正確に実行して問題を修正しました: http://julistr.com/blog/2016/09/ng2-get-window-ref/

于 2016-11-18T11:51:29.513 に答える