一、概述

  • 钩子函数用来描述一个组件从引入到退出的全过程中的某个过程,整个过程称为生命周期。
  • 钩子函数按照组件生命周期的过程分为:挂载阶段=>更新阶段=>销毁阶段。

二、每个阶段对应的钩子函数

  • 挂载阶段:beforeCreate、created、beforeMounted、mounted
  • 更新阶段:beforeUpdate、updated
  • 销毁阶段:beforeDestroy、destroyed

三、各个钩子函数的使用特点

  • beforeCreate: 这个阶段主要是完成vue中关于生成周期以及事件的一些初始化工作。这时候,data和methods中的数据都没初始化
  • created: 实例创建完成,可访问data、computed、watch、methods上的方法和数据,未挂载到DOM,不能访问到el属性,el属性,ref属性内容为空数组常用于简单的ajax请求,页面的初始化
  • beforeMount: 在挂载开始之前被调用,beforeMount之前,会找到对应的template,并编译成render函数
  • mounted: 实例挂载到DOM上,此时可以通过DOM API获取到DOM节点,$ref属性可以访问常用于获取VNode信息和操作,ajax请求
  • beforeupdate: 响应式数据更新时调用,发生在虚拟DOM打补丁之前,适合在更新之前访问现有的DOM,比如手动移除已添加的事件监听器
  • updated: 虚拟 DOM 重新渲染和打补丁之后调用,组件DOM已经更新,可执行依赖于DOM的操作避免在这个钩子函数中操作数据,可能陷入死循环
  • beforeDestroy: 实例销毁之前调用。这一步,实例仍然完全可用,this仍能获取到实例,常用于销毁定时器、解绑全局事件、销毁插件对象等操作
  • destroyed: 销毁,实例上的data和所有methods,以及过滤器、指令都处于不可用状态,还未真正销毁

四、父子组件钩子函数在三个阶段的代码执行顺序

  • 挂载: 父亲created> 子created > 子mounted> 父亲mounted>
  • 更新: 父亲beforeUpdate > 子beforeUpdated > 子updated > 父亲updated
  • 销毁: 父亲beforeDestroy> 子beforeDestroy > 子destroyed> 父destroyed

五、Vue生命周期流程图

细说vue钩子函数(生命周期函数)相关推荐

  1. Vue钩子函数中的this为什么能指向Vue的实例而不是指向传入的参数options(Vue源码解读)

    起因 先看一段Vue的代码,在Vue的原型链上增加了一个setData方法,然后实例化Vue对象,传入一个Object类型的参数 Vue.prototype.setData = function (k ...

  2. vue钩子函数beforeRouteEnter

    vue钩子函数beforeRouteEnter beforeRouteEnter 函数内部的 this 为 undefined,这是因为 beforeRouteEnter 是在页面创建前就执行的, 先 ...

  3. vue 钩子函数 使用async await

    <!DOCTYPE html> <html><head><meta charset="utf-8" /><title>v ...

  4. c语言中的钩子函数,生命周期(vue的钩子函数)

    生命周期图示 创建前,创建后,挂载前,挂载后,更新前,更新后,销毁前,销毁后 beforeCreate:function(){ console.log('1-beforeCreate 组件还未被创建' ...

  5. Vue 钩子函数(含生命周期钩子)汇总

    Vue 实例从创建到销毁的过程,就是生命周期.也就是从开始创建.初始化数据.编译模板.挂载 Dom→渲染.更新→渲染.卸载等一系列过程,我们称这是 Vue 的生命周期. 一. beforeCreate ...

  6. Vue钩子函数以及父组件的8个钩子和子组件的8个钩子的先后执行的顺序

    ** vue组件生命周期 ** 一个组件从 创建 到 销毁 的整个过程就是生命周期 生命周期函数(钩子函数) vue 框架内置函数,随着组件的生命周期,自动 按次序 执行 作用:特定的时间点,执行某些 ...

  7. Vue钩子函数mounted实现进入页面立即查询的功能案例

    Vue的钩子函数:当执行到某一阶段就会执行的方法/函数.就相当于spring中bean的生命周期一样.

  8. VUE3组合api的钩子函数生命周期

    选项API生命周期选项和Composition API之间的映射 beforeCreate------>使用setup() created------>使用setup() beforeMo ...

  9. vue钩子函数是什么,有什么没用

    文章目录 前言 目标 一.定义 二.vue加载过程 三.基本的使用 参考 前言 人见白头嗔,我见白头喜 目标 理解钩子函数,和基本应用 一.定义 每个 Vue 实例在被创建时都要经过一系列的初始化过程 ...

最新文章

  1. 第三组 通信一班 030 ISISv6
  2. elasticsearch 第一篇(入门篇)
  3. maven install (window 7)
  4. MySQL学习笔记_5_SQL语言的设计与编写(上)
  5. mmdetection水下海鲜目标检测
  6. android连mysql注册界面代码_Android实现注册登录界面的实例代码
  7. Educational Codeforces Round 67 E.Tree Painting (树形dp)
  8. Atitit 智能云网络摄像机的前世今生与历史 优点  密码默认888888
  9. FleaPHP和ThinkPHP(比较)
  10. 联创宽带上网助手协议的简单分析(二) :identify包的构造
  11. 自学mysql教程 资料_数据库MYSQL,自学,命令,教程。
  12. TFN DG15M 高抗干扰电缆故障测试仪评测
  13. [uboot]MLO和uboot-spl.bin, uboot.img和uboot.bin
  14. 批归一化(Batch Normalization)详解
  15. Fairplay之 generating FairPlay content key request on iOS after 14.6
  16. Linux中打开谷歌浏览器后一直在转圈
  17. c语言编译器IDE怎么,C语言编译器和IDE的选择
  18. 如何度过8天长假?小灰推荐几部经典电影给大家!
  19. 如何快速找出电脑对应cisco交换机接口的方法
  20. Intellij Idea:禁忌,请勿手残

热门文章

  1. 培训课后作业(1)番外篇
  2. GO 依赖管理工具go Modules
  3. 企业数字化转型设计(107页PPT)
  4. express,multer,jQuery前端后端上传单个文件
  5. oracle中临时表文件,Oracle学习(十二)之管理临时表空间的数据文件
  6. mysql索引相关面试题
  7. xctf攻防世界 REVERSE 高手进阶区 easyRE1
  8. POI的Excel表格导出教程
  9. 使用ICON动态修改exe文件图标
  10. 基于集成融合模型检测电商异常订单