• 一、Vue3基础[生命周期]


    一、生命周期

    1.beforeCreate

    详细信息:会在实例初始化完成、props 解析之后、data()computed 等选项处理之前立即调用
    ,此时datawatchermethods都还没有生效

    应用:不经常使用,常常用于某些插件初始化

    2. created

    详细信息:当这个钩子被调用时,以下内容已经设置完成:响应式数据计算属性方法侦听器。然而,此时挂载阶段还未开始,因此 $el 属性仍不可用

    应用:此时常常用于通过ajax进行数据请求

    3. beforeMount

    详细信息:当这个钩子被调用时,组件已经完成了其响应式状态的设置,但还没有创建 DOM 节点。它即将首次执行 DOM 渲染过程。此时DOM还是无法操作的。相比于created生命周期,只是多了一个$el的属性,然而其值为undefined

    应用:此时就要渲染,在这里也可以更改数据,不会触发updated,在这里可以在渲染前最后一次更改数据的机会

    4.mounted

    详细信息:el已完成DOM的挂载与渲染,DOM也渲染完毕。

    5.beforeUpdate

    详细信息:其在data数据改变时(改变的data里面的数据必须在页面中显示变化)先触发该函数,然后触发updated

    <template>
      <div>
        {{okko}}
        <br>
        ----------
        <br>
        ----------
        <br>
        ----------
      </div>
    </template>
    <script>
    export default {
      data() {
        return {
          okko: 123,
          buku:569
        }
      },
      mounted(){
        setTimeout(()=>{
          this.okko=12356
        },1000)
      },
      beforeUpdate(){
        console.log(1)
      },
      updated(){
        console.log(2)
      }
    }
    </script>
    <style>
    
    </style>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35

    6.updated

    详细信息:其在data数据改变时(改变的data里面的数据必须在页面中显示变化)先触发beforeUpdate,然后触发updated

    7.beforDestroy

    详细信息:vue3中称之为beforeUnmount,在实例销毁之前调用,实例仍然完全可用,这一步还可以用this来获取实例,一般在这一步做一些重置的操作,比如清除掉组件中的定时器 和 监听的dom事件

    8.destroyed

    详细信息:vue3中称之为unmounted,在实例销毁之后调用,调用后,所以的事件监听器会被移出,所有的子实例也会被销毁

    二、Vue3组合式与选项式不同写法

    
    选项式          -------->      组合式
     
    beforeCreate   -------->      setup(()=>{})
    created        -------->      setup(()=>{})
    beforeMount    -------->      onBeforeMount(()=>{})
    mounted        -------->      onMounted(()=>{})
    beforeUpdate   -------->      onBeforeUpdate(()=>{})
    updated        -------->      onUpdated(()=>{})
    beforeDestroy  -------->      onBeforeUnmount(()=>{})
    destroyed      -------->      onUnmounted(()=>{})
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
  • 相关阅读:
    七星创客新零售系统:颠覆性商业模式的崛起
    大模型多跳推理有解啦,北大化繁为简,用30B模型击败百亿模型
    ubuntu_24.04 Noble LTS安装docker desktop启动无窗口及引擎启动失败的解决方法
    冰冰学习笔记:linux的文件系统
    kotlin类与对象
    lspci源码
    C++ Tutorials: C++ Language: Compound data types: Dynamic memory
    无需付费开会员,一个Python程序实现PDF转高清图片
    游戏实战篇|原神人物模型下载教程,并在Unity中给模型 添加动画【伯嫖最新原神所有人物模型】文末送书
    如何使用 MySQL 做全文检索这件事
  • 原文地址:https://blog.csdn.net/weixin_46765649/article/details/127272428