在 ngOnInit 或构造函数中调用初始化方法

call initialize method in ngOnInit or constructor

我对 Angular 4 很陌生,

你能告诉我调用像 initializeMyObj() 这样的方法有什么不同吗 在构造函数中而不是 ts 文件中的 ngOnInit?

谢谢

主要区别是构造函数是打字稿构造而ngOnInit是组件和指令的生命周期钩子。

构造函数用于初始化组件。此时@Input绑定属性没有初始化

另一方面,ngOnInitconstructor 和 [=18= 之后被调用 once ]ngOnChange。此时组件初始化完成,属性绑定。

@Component({
...
})
export class MyComp{
    @Input() someprop;
    constructor(){
        console.log(someprop); //undefined
    }
    ngOnInit(){
        console.log(someprop); 
    }
}