博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浅谈vue —— 生命周期
阅读量:6577 次
发布时间:2019-06-24

本文共 1443 字,大约阅读时间需要 4 分钟。

记于vue生命周期的学习

每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听、编译模板、将实例挂载到 DOM 并在数据变化时更新 DOM 等。同时在这个过程中也会运行一些叫做生命周期钩子的函数,这给了用户在不同阶段添加自己的代码的机会。


比如我们经常用到的created钩子:

export default {     created() {         ...在这里我们通常发起异步请求,得到数据             }     } 
复制代码

接下来我们看一下有哪些钩子函数:

方法 作用
beforeCreate 组件实例刚被创建,在data属性之前。
created 组件实例创建完成,data属性、computed、props、methods、watch已绑定,但DOM还未生成。
beforeMount
mounted DOM已生成,但不保证已全部挂载在document中(用this.$nextTick 可以保证已经在document中)
beforeUpdate
updated 更新时触发
beforeDestroy 组件销毁之前触发 (可以用于清除定时器,取消全局的注册事件),此时的this还是指向vue实例
destroyed 此时的this不指向vue实例

单个组件的生命周期

复制代码

由上述执行结果:

我们可以得出,每一个vue实例都会执行beforeCreat、created、beforeMount、mounted这四个钩子并且只执行一次,再有数据(必须是与视图绑定的数据)更新的时候才会执行beforeUpdate、updated这两个钩子,beforeDestroy、destroyed在视图销毁的时候触发。复制代码

子组件

复制代码

在父组件的beforeMount钩子之后会执行子组件一系列的钩子函数,将子组件挂载在父组件之后,再将父组件挂载。


更新props影响的钩子函数

更新props的值的时候,会触发父组件的beforeUpdate,同时也会触发子组件的beforeUpadte、updated钩子,最后触发父组件的updated钩子。


再一次感谢您花费时间阅读这份稿!

作者 [@xinwuliu][2]

2018 年 05月 08日

转载于:https://juejin.im/post/5aeff61cf265da0b9f403358

你可能感兴趣的文章
求height数组
查看>>
c语言中通过指针将数值赋值到制定内存地址
查看>>
Python学习—2048小游戏等4个小练习
查看>>
构造函数和构造代码块
查看>>
颠倒顺序了,
查看>>
局部加权线性回归,线性回归高级版
查看>>
约瑟夫问题(猴子选大王)
查看>>
对还剩20天的FPGA大赛规划
查看>>
果园里的树
查看>>
Java递归目录结构
查看>>
SEL是啥玩意
查看>>
【转载】 MySQL之用户资源限制
查看>>
IntelliJ Idea 常用快捷键
查看>>
由1 2 3 4可以组成多个十百 无重复的数字
查看>>
android device action and adb command
查看>>
Makefile系列之五 :函数
查看>>
如何去掉私钥的密码
查看>>
jquery网页日历显示控件calendar3.1使用详解
查看>>
查看登陆系统用户的信息的三种方法详解
查看>>
apache调优隐藏版本信息及404重定向
查看>>