【问题标题】:What is the meaning of this below code? I am just beginner下面这段代码是什么意思?我只是初学者
【发布时间】:2019-11-02 21:35:31
【问题描述】:

我无法理解以下代码

@Component({
  selector: 'app-heroes',
   templateUrl: './heroes.component.html',
   styleUrls: ['./heroes.component.css']
})
export class HeroesComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

}

我的疑惑是,我们在 export clss HeroesComponent 部分做了什么? OnInit、constructor和ngOnInit是什么?

【问题讨论】:

  • 你应该阅读官方的 Angular 文档,那里的所有内容都通过示例进行了解释

标签: javascript angular


【解决方案1】:

构造函数,ngOnInit 都只是类中的方法。 通常,当创建类的实例(即此处的组件)时将调用构造函数方法,而在为组件创建 DOM 后将调用 ngOnInit。

更多细节,

Angular 引导过程包括两个主要阶段:

  • 构建组件树
  • 运行变化检测

Angular 构建组件树时调用组件的构造函数。 包括 ngOnInit 在内的所有生命周期钩子都被称为变更检测阶段的一部分。

用途: 构造函数主要用于依赖注入,任何与组件相关的初始化都在 ngOnInit 中初始化。为了使用 ngOnInit 方法,我们需要从 Angular 库中实现 OnInit 接口。

【讨论】:

  • 如果它解决了您的问题,请接受或支持答案
【解决方案2】:

根据您的问题,我推断您是 Angular 社区的新手。

OnInit 是一个接口。 在类型文件生命周期_hooks.d.ts 中,它被定义为

导出接口 OnInit { ngOnInit(): 无效; }

它的用途 -> 在指令和组件的数据绑定属性初始化之后调用的生命周期钩子。(或者在初始化之前,如果你想做一些任务,你写在这个 ngOnInit() { } 方法)

需要注意的一点是(在您的情况下可能不是很有用)是父母 OnInit 在它的孩子之前被调用。此外,它仅在 * 指令被实例化。

constructor() 是一个方法,当 Angular 创建你的类的对象时会被调用。

就像 OnInit 一样,有多个生命周期钩子。你使用它的方式就像 OnInit -> 实现接口并定义方法,你可以写下任何你想在组件的生命周期阶段运行的代码. 下面是这些钩子的调用顺序。

如果我能够解决您的问题,请将其标记为已解决。

【讨论】:

    猜你喜欢
    • 2022-01-20
    • 1970-01-01
    • 2016-03-28
    • 1970-01-01
    相关资源
    最近更新 更多