首页 > 解决方案 > 我应该在 Angular 中再次调用 ngOnInit() 吗?

问题描述

我是 Angular 的新手,这个问题可能听起来很愚蠢。请多多包涵。

我已经定义了我的ngOnInit喜欢:

ngOnInit() {
 this.rowData = this.studentService.getStudents();//Make http calls to populate data
}

如果我需要重新加载数据,我会再次调用 ngOnInit:

onSomeEvent(){
 this.ngOnInit();
}

这个可以吗?ngOnInit()或者如果是一种昂贵的方法,我应该写下再次调用 http 的行。

标签: angulartypescript

解决方案


不,这不是一个好习惯。

更好的是调用一些方法,ngOnInit并在需要时调用相同的方法。像这样-

ngOnInit() {
 this.onLoad();
}

onLoad() {
this.rowData = this.studentService.getStudents();//Make http calls to populate data
}

onSomeEvent(){
 this.onLoad();
}

推荐阅读