Vue生命周期

90 阅读1分钟

vue生命周期钩子详细

image.png

vue生命周期钩子就是:: vue从创建到销毁过程中,会执行的一些回调函数 ==
钩子:就是一种回调函数

    • 例如

      • window.onload = function(){ dom加载完毕,外部资源加载完毕就执行 }
  • 生命周期 : vue实例从出生到扑街的过程

    • 出生:

      • 创建vue实例
      • 创建data数据
      • 创建el挂载点
      • 将data数据渲染到el挂载点
    • 扑街

      • vue实例被销毁

        • 这里销毁不是指vue实例变成了null,而是指解除data与el的关联

          • 说人话:修改了data,页面不会被渲染

\

每一个周期中的钩子中的this都是指向Vue实例,所以生命周期不能是箭头函数,俗称四阶八钩

四阶: 初始化 挂载 更新 销毁

八阶是

1- beforeCreate(){vue实例创建了,但是el和data还没有创建 (准备创建data),初始化一些事件和侦听器配置项)}

2- created() {el挂载点创建了,但是data数据还没有渲染(准备渲染中)创建el挂载点,并且生成虚拟DOM}

3- beforeMount() {el挂载点创建了,但是data数据还没有渲染(准备渲染中) 底层:创建el挂载点,并且生成虚拟DOM}

4-mounted()d(){将虚拟dom渲染成真实DOM,这个钩子是最早可以获取页面DOM元素的钩子虚拟DOM和渲染的数据一并挂到真实DOM上}

5- beforeUpdate() {检测到data数据变化,但是还没有开始重新渲染}

6- updated() 完成重新渲染,会执行多次{}

7-beforeDestroy() {解除 事件绑定、侦听器、组件}

8-destroyed() {vue实例已经销毁}