vue生命周期浅理解

简单来说,生命周期包含八个:

beforeCreate  created     //出生前后
beforeMount   mounted     //挂载前后
beforeUpdate  updated     //更新前后
beforeDestory  destoryed  //销毁前后

其中最常用到的是 createdmounted ,而 beforeCreatedestoryed 几乎用不


created 中可以获取ajax,初始化页面的操作; mounted执行之后就表示真实dom已经渲染完成,可以进行操作了。

created 之后若是存在 template属性[还需要有一个 el ],就会用模板的内容替换掉外部的HTML,此时#app内的内容是无效的,而且只能有一个根元素,不能是文本节点[之后开始编译(beforeMount)]。

之后数据一变化就可以调用 beforeUpdateupdated,但是此方法有点鸡肋,因为可以用watch替换[更好用,可监听到具体那个数据变化了]。

之后若存在 vm.$destory() 方法,beforeDestorydestoryed 就会被调用,beforeDestory 可以用来清除定时器和解绑事件。


补充: this.$data vm上的数据
            this.$watch 监控
            this.$el 当前的el元素
            this.$set 对后加的属性实现响应式变化
            this.$options vm上的所有属性
            this.$nextTick(()=>{}) 异步方法,等待dom渲染完成后来获取vm。
            this.$refs 所有ref的集合,可以取到真实的dom[<p ref="myp'><p/> this.$refs.myp][如果不是通过v-for循环出来的只能获取一个,多个时为数组]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值