以下是angular2文档中OnChanges生命周期事件的解释 .
ngOnChanges - before ngOnInit and when a data-bound input property value changes.
下面是我的示例组件代码
@Component({
selector:'app-main',
template:`
<user-form>Loading....</user-form>
`,
directives: [userFormComponent],
providers: [HTTP_PROVIDERS,UserService]
})
export class AppComponent implements OnInit , OnChanges {
@Input()
public prop: string = "hi!";
ngOnInit() {
console.log('ngOnInt') ;
}
ngOnChanges() {
console.log('ngOnChanges') ;
}
}
我在这个html页面中引用了这个组件
<app-main [prop]="test">Loading...</app-main>
现在我的问题是,即使我通过赋值“test”来改变数据绑定输入属性“prop”,为什么不执行ngOnChanges . 顺便说一句,我是angular2的新手 .
1 回答
问题是这不适用于主要组件/根组件 .
因此,
ngOnChanges
钩子方法不适用 .看到这个问题: