vue生命周期

Vue实例有一个完整的生命周期,从开始创建,初始化数据,编译模板,挂在DOM.渲染 更新 渲染 卸载等一系列过程,vue实例的生命周期,钩子就是某阶段给自己做某些处理的机会。
beforeCreate(创建前)
在实例初始化之后,数据观测和事件配置之前被调用,此时组件的选项对象还未创建,el和data并未初始化,因此无法访问methods data computed等上的方法和数据。
created(创建后)
实例已经创建完成之后被调用,在这一步,实例已经完成以下配置: 数据观测、属性和方法的运算,watch/event事件回调,完成data数据的初始化, el没有,然而,挂载阶段还没有开始,$el属性目前不可见,这是一个常用的生命周期,在这个里面可以调用methods中的方法,改变data中的数据,并且修改可以通过vue的响应式绑定提体现在页面上,获取computed的计算属性,通常我们可以在这里对实例进行预处理,也可以在这里发送ajax请求,值得注意的是,这个周期中没有什么方法对实例化过程进行拦截,有些数据必须获得允许才进入页面的话,并不适合在这个方法发送请求,建议在组件路由钩子beforeRouteEnter中完成.
beforeMount
挂在开始之前被调用,相关render函数首次被调用(虚拟DOM),实例已完成以下配置:编译模板,把data里面的数据和模板生成的html,完成了el和data初始化,注意此时还没有挂在html到页面上
mounted
挂载完成,也就是模板中的HTML渲染到Html页面中,此时一般可以做一些ajax操作,mounted只会执行一次
beforeUpdate(更新前)
在数据源更新之前被调用,发生在虚拟DOM重新渲染和打补丁之前,可以在改钩子中进一步地更改状态,不会触发附加重渲染过程。
updated(更新后)
在由于数据更改导致虚拟DOM重新渲染和打补丁只会调用,调用时,组件DOM已经更新,所以可以执行依赖于Dom的操作,在大多数情况下,应该避免在此期间更改状态,因为这可能导致更新无线循环,这个钩子在服务器渲染期间不被调用
beforeDestrioy(销毁前)
在实例销毁之前调用,实例仍然完全可用
1 这一步可以使用this来获取实例
2 一般在这一步做一些重置的操作,清除掉组件中的定时器和监听dom事件

destory(销毁后)
在实例销毁之后调用,调用后,所有事件监听器会被移除,所有子实例也会被销毁,在钩子在服务器端渲染期间不被调用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值