细说vue钩子函数(生命周期函数)
一、概述
- 钩子函数用来描述一个组件从引入到退出的全过程中的某个过程,整个过程称为生命周期。
- 钩子函数按照组件生命周期的过程分为:挂载阶段=>更新阶段=>销毁阶段。
二、每个阶段对应的钩子函数
- 挂载阶段: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钩子函数(生命周期函数)相关推荐
- Vue钩子函数中的this为什么能指向Vue的实例而不是指向传入的参数options(Vue源码解读)
起因 先看一段Vue的代码,在Vue的原型链上增加了一个setData方法,然后实例化Vue对象,传入一个Object类型的参数 Vue.prototype.setData = function (k ...
- vue钩子函数beforeRouteEnter
vue钩子函数beforeRouteEnter beforeRouteEnter 函数内部的 this 为 undefined,这是因为 beforeRouteEnter 是在页面创建前就执行的, 先 ...
- vue 钩子函数 使用async await
<!DOCTYPE html> <html><head><meta charset="utf-8" /><title>v ...
- c语言中的钩子函数,生命周期(vue的钩子函数)
生命周期图示 创建前,创建后,挂载前,挂载后,更新前,更新后,销毁前,销毁后 beforeCreate:function(){ console.log('1-beforeCreate 组件还未被创建' ...
- Vue 钩子函数(含生命周期钩子)汇总
Vue 实例从创建到销毁的过程,就是生命周期.也就是从开始创建.初始化数据.编译模板.挂载 Dom→渲染.更新→渲染.卸载等一系列过程,我们称这是 Vue 的生命周期. 一. beforeCreate ...
- Vue钩子函数以及父组件的8个钩子和子组件的8个钩子的先后执行的顺序
** vue组件生命周期 ** 一个组件从 创建 到 销毁 的整个过程就是生命周期 生命周期函数(钩子函数) vue 框架内置函数,随着组件的生命周期,自动 按次序 执行 作用:特定的时间点,执行某些 ...
- Vue钩子函数mounted实现进入页面立即查询的功能案例
Vue的钩子函数:当执行到某一阶段就会执行的方法/函数.就相当于spring中bean的生命周期一样.
- VUE3组合api的钩子函数生命周期
选项API生命周期选项和Composition API之间的映射 beforeCreate------>使用setup() created------>使用setup() beforeMo ...
- vue钩子函数是什么,有什么没用
文章目录 前言 目标 一.定义 二.vue加载过程 三.基本的使用 参考 前言 人见白头嗔,我见白头喜 目标 理解钩子函数,和基本应用 一.定义 每个 Vue 实例在被创建时都要经过一系列的初始化过程 ...
最新文章
- 第三组 通信一班 030 ISISv6
- elasticsearch 第一篇(入门篇)
- maven install (window 7)
- MySQL学习笔记_5_SQL语言的设计与编写(上)
- mmdetection水下海鲜目标检测
- android连mysql注册界面代码_Android实现注册登录界面的实例代码
- Educational Codeforces Round 67 E.Tree Painting (树形dp)
- Atitit 智能云网络摄像机的前世今生与历史 优点 密码默认888888
- FleaPHP和ThinkPHP(比较)
- 联创宽带上网助手协议的简单分析(二) :identify包的构造
- 自学mysql教程 资料_数据库MYSQL,自学,命令,教程。
- TFN DG15M 高抗干扰电缆故障测试仪评测
- [uboot]MLO和uboot-spl.bin, uboot.img和uboot.bin
- 批归一化(Batch Normalization)详解
- Fairplay之 generating FairPlay content key request on iOS after 14.6
- Linux中打开谷歌浏览器后一直在转圈
- c语言编译器IDE怎么,C语言编译器和IDE的选择
- 如何度过8天长假?小灰推荐几部经典电影给大家!
- 如何快速找出电脑对应cisco交换机接口的方法
- Intellij Idea:禁忌,请勿手残