AngularJS中构造函数和ngOnInit之间的区别是什么
构造器:构造器是一个类的默认方法,当一个类被安装时,它被创建,并确保该类及其子部分的角色的正确执行。Angular最好是依赖性注入器(DI),分析构建器的组件,当通过调用new MyClass()创建一个新功能时,试图找到与构建器的参数类型相匹配的供应商,解决它们并将它们传递给类似的组件。
示例:
输出:
ngOnInit: OnInit是一个叫做Angular的生命周期部件,以表明Angular是为了创建一个组件而制作的。我们必须像这样导入OnInit才能使用它(实际上使用OnInit并不是必须的,但它被认为是好的)。
语法:
并使用它来执行OnInit方法,我们应该使用这样的一个部分。
示例:
输出:
注意:班的应用程序销售
使用此交互在管理属性启动后应用自定义的启动思维。NGOnInit是在目标站点第一次被索引后,在其任何子站点被测试前被命名的。只包含一次引导。
** ngOnInit和构造函数的区别:**
- 我们大多在每次启动/宣布时使用ngOnInit,避免事情在构建器中工作。构造函数应该只用于启动类成员,但不应该做实际的 “工作”。
- 所以你应该使用构造函数()来设置依赖注入,而不是很多。ngOnInit()是一个更好的 “起点”–这是解决组件组合的地方/时候。
- 我们使用constructor()进行所有的初始化/声明。
- 最好避免在构造函数中写入实际工作。
- 构造函数()应该只用于初始化类成员,而不应该做实际的 “工作”。
- 所以我们应该使用constructor()来设置依赖性注入、类字段的初始化等。
- ngOnInit()是写 “实际工作代码 “的一个更好的地方,我们需要在类被实例化后立即执行。
- 比如从数据库加载数据 – 在你的HTML模板视图中向用户展示。这样的代码应该写在ngOnInit()中。
结论:
- 构造函数初始化类成员。
- ngOnInit()是一个放置代码的地方,当类被实例化时,我们需要在第一时间执行这些代码。