Angular生命周期函数

Angular 中,组件的生命周期由一系列钩子函数(lifecycle hooks)来控制,这些钩子函数按照特定的顺序在组件的生命周期中被调用。以下是常见的 Angular 组件生命周期函数及其运行顺序:

  1. ngOnChanges: 当组件的输入属性发生变化时,ngOnChanges 钩子函数会被调用。它会在组件初始化之后以及每次输入属性发生变化时执行。

  2. ngOnInit: ngOnChanges之后,ngOnInit钩子函数被调用。它在组件初始化完成后立即执行,用于进行组件的一次性初始化操作。

  3. ngDoCheck: 在每个变更检测周期中,ngDoCheck钩子函数会被调用。它用于检测和响应组件中的任何变化,包括检测到输入属性的变化、检测到子组件变化等。

  4. ngAfterContentInit: 当组件所包含的外部内容投影到组件视图之后,ngAfterContentInit 钩子函数被调用。它表示组件的内容初始化已完成。

  5. ngAfterContentChecked: 在每个变更检测周期中,ngAfterContentChecked 钩子函数会被调用。它在ngAfterContentInit 之后调用,用于执行与内容投影相关的任何后续操作。

  6. ngAfterViewInit: 当组件的视图初始化完成后,ngAfterViewInit 钩子函数被调用。它表示组件的视图已经初始化完成,可以进行 DOM 操作。

  7. ngAfterViewChecked: 在每个变更检测周期中,ngAfterViewChecked钩子函数会被调用。它在ngAfterViewInit 之后调用,用于执行与视图相关的任何后续操作。

  8. ngOnDestroy: 当组件即将被销毁时,ngOnDestroy钩子函数会被调用。它用于进行组件的善后操作,如取消订阅、释放资源等。

需要注意的是,ngOnChanges、ngOnInit、ngDoCheck、ngAfterContentChecked、ngAfterViewInit、ngAfterViewChecked 这些钩子函数会在每个变更检测周期中被调用,而 ngAfterContentInit 和 ngOnDestroy 只会在组件的生命周期中被调用一次。

以上是Angular组件生命周期函数的运行顺序。了解它们的执行顺序有助于在合适的时机执行特定的操作,以确保组件的生命周期正确地处理和管理组件的状态和行为。

相关推荐
Dream耀24 分钟前
Cookie:Web身份认证的基石
前端·javascript·http
Qinana26 分钟前
今日前端学习总结
javascript
学吧那就28 分钟前
JavaScript进阶之路(一)
javascript
十盒半价32 分钟前
闭包:JS 里的 “背包客”,背走了变量的秘密
前端·javascript·trae
FairyDiana34 分钟前
【JavaScript】一篇文章,带你拿捏JS中的类型判断
javascript·面试
江城开朗的豌豆1 小时前
路由守卫:你的Vue路由‘保安’,全局把关还是局部盯梢?
前端·javascript·vue.js
Jinxiansen02111 小时前
Vue 3 响应式核心源码详解(基于 @vue/reactivity)
前端·javascript·vue.js
Cacciatore->7 小时前
Electron 快速上手
javascript·arcgis·electron
vvilkim7 小时前
Electron 进程间通信(IPC)深度优化指南
前端·javascript·electron
某公司摸鱼前端8 小时前
ES13(ES2022)新特性整理
javascript·ecmascript·es13