我想不通为什么 Angular component class add 实现了 onInit 接口

I can't figure out why Angular component class add implements onInit interface

当您通过"ng g component ~"命令创建组件时,组件class自动实现'OnInit'接口。

下面的代码片段展示了一个组件如何实现这个接口来定义它自己的初始化方法。

@Component({selector: 'my-cmp', template: `...`})
class MyComponent implements OnInit {
  ngOnInit() {
    // ...
  }
}

在上面的Angular文档中,说接口是为了定义自己的初始化方法,

即使省略'implement OnInit'语法,通过ngOnInit(){}语法定义也没有问题

不知道为什么要写。

接口(类似于java)是组件和接口实现之间的契约。 Angular 开发人员推动使用 OnInit 之类的初始化块(而不是组件构造函数)。