Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular ngOnInit()、ngAfterViewInit()、ngafterContentInit()、ngAfterViewChecked()和构造函数()之间有什么区别?_Angular_Typescript_Angular Lifecycle Hooks - Fatal编程技术网

Angular ngOnInit()、ngAfterViewInit()、ngafterContentInit()、ngAfterViewChecked()和构造函数()之间有什么区别?

Angular ngOnInit()、ngAfterViewInit()、ngafterContentInit()、ngAfterViewChecked()和构造函数()之间有什么区别?,angular,typescript,angular-lifecycle-hooks,Angular,Typescript,Angular Lifecycle Hooks,ngOnInit()、ngAfterViewInit()、ngafterContentInit()、ngAfterViewChecked()与构造函数之间的区别是什么?我们如何在Angular 2中实现它们? 它们的目的和用途是什么?在哪些方面对实施这些目标有用 谢谢 这些是生命周期挂钩,您可以利用它们执行操作和组件生命周期的不同时间 官方文件中有关于该主题的优秀指南: 组件具有由Angular管理的生命周期 Angular创建它,渲染它,创建并渲染它的子对象, 在其数据绑定属性更改时检查它,并

ngOnInit()、ngAfterViewInit()、ngafterContentInit()、ngAfterViewChecked()与构造函数之间的区别是什么?我们如何在Angular 2中实现它们? 它们的目的和用途是什么?在哪些方面对实施这些目标有用

谢谢

这些是生命周期挂钩,您可以利用它们执行操作和组件生命周期的不同时间

官方文件中有关于该主题的优秀指南:

组件具有由Angular管理的生命周期

Angular创建它,渲染它,创建并渲染它的子对象, 在其数据绑定属性更改时检查它,并将其销毁 在将其从DOM中删除之前

Angular提供了生命周期挂钩,可提供对这些关键点的可见性 生命时刻以及发生时采取行动的能力

中的下图描述了生命周期挂钩的顺序:

建造师

它是在Angular实例化组件时触发的类构造函数。它主要用于DI,在角度变化检测之前调用。您可以在此处阅读更多信息:

ngOnInit()、ngAfterViewInit()、ngafterContentInit(), ngAfterViewChecked()

这些是生命周期挂钩。它们被调用的时间不同,因此它们中的数据也不同。关于变更检测中其他操作的时间安排,在文章中有明确说明:

订单明确规定:

  • OnChanges
    如果绑定更改,则子组件上的生命周期挂钩
  • 每当
    @输入
    绑定发生更改时通知。如果需要不断跟踪这些绑定,请使用它

  • 子组件上的
    OnInit
    ngDoCheck
    OnInit
    仅在第一次检查时调用)
  • 通知
    @Input
    绑定可用。如果不需要经常跟踪这些绑定,请使用它

  • AfterContentInit
    AfterContentChecked
    子组件实例上的生命周期挂钩(
    AfterContentInit
    仅在第一次检查期间调用)
  • 通知投影内容(ng内容)的角度变化检测。如果需要使用
    @ContentChildren
    装饰器查询投影元素,请使用它

  • AfterViewInit
    AfterViewChecked
    子组件实例上的生命周期挂钩(
    AfterViewInit
    仅在第一次检查期间调用)
  • 通知对视图内容进行角度更改检测。如果需要使用
    @ViewChildren
    装饰器查询视图元素,请使用它


    关于
    ngDoCheck
    lifecyclehook有很多困惑。要了解更多内容,请阅读。

    投影内容的含义是什么?