2016-09-20 8 views
0

私のAngular2アプリケーションでは、ビューが利用可能になると、各コンポーネントの初期化後にスクリプトを呼び出す必要があります。角度2 - すべてのコンポーネントに対してngAfterViewInitを定義します。

"ngAfterViewInit"ライフサイクルコールバックをすべてのコンポーネントに対してグローバルに定義する最良の方法を探しています。私はチームの誰かがそれを忘れる大きな変化があるので、各コンポーネントに書き込むことはできません。

  • オーバーライド@Component、可能な場合は
  • 使用は

これを行う方法はありをルーティング:私が考えた何

ありがとうございました!

+1

どのように抽象クラスについて:plunker作業

import { Component } from '@angular/core'; export abstract class AbstractViewInit { ngAfterViewInit() { console.log('after View init'); } } @Component({ selector: 'child', template: 'I am a child' }) export class ChildComponent extends AbstractViewInit {} @Component({ selector: 'my-app', template: '<h1>My First Angular 2 App</h1> <child></child>' }) export class AppComponent extends AbstractViewInit {} 

:よう

何か? – kit

+0

誰かがngAfterViewInitメソッドを書くのを忘れてしまうのであれば、それをチェックする単体テストやプリコミットフックを書かないのはなぜですか? – StephaneM

答えて

関連する問題