ngOnInit()
クラスが解決されたときに が呼び出されないのはなぜですかInjectable
?
コード
import {Injectable, OnInit} from 'angular2/core';
import { RestApiService, RestRequest } from './rest-api.service';
@Injectable()
export class MovieDbService implements OnInit {
constructor(private _movieDbRest: RestApiService){
window.console.log('FROM constructor()');
}
ngOnInit() {
window.console.log('FROM ngOnInit()');
}
}
コンソール出力
FROM constructor()
ベストアンサー1
ライフサイクルフックディレクティブやコンポーネントでは機能しますOnInit()
。あなたの場合のサービスのような他のタイプでは機能しません。ドキュメントより:
コンポーネントには、Angular 自体によって管理されるライフサイクルがあります。Angular はコンポーネントを作成し、レンダリングし、その子を作成およびレンダリングし、データ バインドされたプロパティが変更されたときにチェックし、DOM から削除する前に破棄します。
ディレクティブとコンポーネントのインスタンスには、Angular によって作成、更新、破棄されるライフサイクルがあります。