2017-07-11 7 views
0

参照の問題を得たが、私はこの問題...angular2 NGX-cookieが、私はクッキーを取得するためにangular2 NGX-クッキーを使用

Exception: Call to Node module failed with error: ReferenceError: document is not defined 

を持って、これは私のコンストラクタは

constructor(private cookie:CookieService) { 
    this.cookie.get(".AspNetCore.Identity.Application"); 

} 

を注入していますこの問題を解決します?

+0

プロジェクトのビルド時または実行時にこのエラーが発生していますか? –

+0

実行時です... –

+1

ここでは野生の推測ですが、 'this.cookie.get()'への呼び出しを 'ngOnInit'メソッドに移動してみてください。一般的に言えば、コンストラクタで失敗するロジックを避けるべきです。コンポーネントに 'ngOnInit'メソッドがある場合、コンポーネントの初期化が完了すると、Angularはそれをトリガします。 –

答えて

0

コンストラクタが呼び出されると、コンポーネントは通常初期化されません。理想的には、コンストラクタは変数のインスタンス化にのみ使用し、例外をトリガする可能性のあるロジックは含めないでください。

代わりに、OnInitインターフェイスをコンポーネントに実装する必要があります。これにより、コンポーネントが初期化されると、AngularはコンポーネントのngOnInitメソッドを呼び出します。

import { Component, OnInit } from '@angular/core'; 
import { CookieService } from 'ngx-cookie'; 

@Component({ 
    templateUrl: './app.component.html' 
}) 
export class AppComponent implements OnInit { 
    title = 'app'; 

    constructor(private cookie:CookieService) { } 

    ngOnInit() { 
    this.cookie.get(".AspNetCore.Identity.Application"); 
    } 
} 
関連する問題