在我的Angular2应用程序中,当视图可用时,我必须在每个组件初始化后调用脚本。
我正在寻找为所有组件定义“ngAfterViewInit”生命周期回调的最佳方法。我无法在每个组件中编写它,因为团队中的某个人忘记了它会发生巨大的变化。
我考虑过:
有办法做到这一点吗?
感谢您的帮助!
答案 0 :(得分:2)
您需要创建一个抽象类,然后从该类扩展所有组件(类)。
类似的东西:
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 {}