美文网首页
[Angular学习笔记]Angular生命周期

[Angular学习笔记]Angular生命周期

作者: salt_fash | 来源:发表于2019-07-12 14:27 被阅读0次

生命周期是什么?

生命周期函数通俗的讲就是组件创建、组件更新、组件销毁的时候会触发的一系列的方法。当 Angular 使用构造函数新建一个组件或指令后,就会按下面的顺序在特定时刻调用这些生命周期钩子方法。

生命周期的顺序

当 Angular 使用构造函数新建一个组件或指令后,就会按下面的顺序在特定时刻调用这些生命周期钩子方法:

钩子 用途及时机
ngOnChanges() @input属性(输入属性)发生变化时,会调用。非此属性,不会调用。当输入属性为对象时,当对象的属性值发生变化时,不会调用,当对象的引用变化时会触发。先于ngOnInit()调用。
ngOnInit() 只执行一次,dom操作可放在其中。(最常用)
ngDoCheck() 每次发生变更检测时会被调用
ngDoCheck() 是Angular中的变更检测机制.它由 zone.js 来实现的.其行为是只要你的Angular中的某个组件发生异步事件.就会检查整个组件树,以保证组件属性的变化或页面的变化是同步的.所以 ngDoCheck() 的触发相当频繁的.并且是我们无法预料到的.也许我们在页面上的一个无意识操作,就会触发几个甚至几十个的 ngDoCheck() 生命周期钩子.
ngAfterContentInit() 在组件内容初始化之后, ngDoCheck() 之后调用,只调用一次。
ngAfterContentChecked() 内容投影:父组件写在子标签之间的内容会被渲染到子模板的ng-content中去,类似vue的slot,组件及子组件每次检查内容时调用,当父子组件都有该钩子时,父组件先执行。
ngAfterViewInit() 当 Angular 初始化完组件视图及其子视图之后调用。第一次 ngAfterContentChecked() 之后调用,只调用一次。
ngAfterViewChecked() ngAfterViewInit() 和每次 ngAfterContentChecked() 之后调用。当父子组件都有该钩子时,子组件先执行。ngAfterViewChecked()ngAfterViewInt中不允许修改绑定的属性(@input属性),否则抛出异常
ngOnDestroy() 每当 Angular 每次销毁指令/组件之前调用并清扫。 在这儿反订阅可观察对象和分离事件处理器,以防内存泄漏。在 Angular 销毁指令/组件之前调用。

相关文章

  • [Angular学习笔记]Angular生命周期

    生命周期是什么? 生命周期函数通俗的讲就是组件创建、组件更新、组件销毁的时候会触发的一系列的方法。当 Angula...

  • angular 钩子

    angular 钩子ngOnInit是 Angular 组件生命周期中的一个钩子,Angular 中的所有钩子和调...

  • angular生命周期

    Angular 学习笔记: 生命周期钩子: 共享模块 共享模块作用: 有些模块可能需要在多个模块中使用,在每个组件...

  • angular生命周期

    大纲 1、angular生命周期是什么2、生命周期钩子分类3、Angular 2 指令生命周期钩子的作用及调用顺序...

  • Angular 2+ 的组件生命周期

    参考资料: angular 2.0 从0到1 -> #Angular 2的组件生命周期

  • angular中的生命周期

    生命周期 1、Angular每个组件都存在一个生命周期,从创建,变更到销毁。Angular提供组件生命周期钩子,把...

  • Angular更新机制(一):Angular的生命周期

    Angular更新机制(一):Angular的生命周期 了解Angular的更新机制之前,首先需要了解Angula...

  • Angular4 组件通讯方法及DOM的操作使用

    简介 由于angular版本更新频繁,导致学习起来特别费劲,下面是在学习 Angular 过程中整理的学习笔记,希...

  • angular6.x--生命周期

    按照生命周期执行的先后顺序,Angular生命周期接口如下所示 生命周期顺序简写在Angular通过构造函数创建组...

  • 12.《Angular生命周期》

    一、生命周期钩子 每个组件都有一个被 Angular 管理的生命周期。Angular 创建它,渲染它,创建并渲染它...

网友评论

      本文标题:[Angular学习笔记]Angular生命周期

      本文链接:https://www.haomeiwen.com/subject/tpqekctx.html