• Vue2和Vue3生命周期映射关系及异同


    在这里插入图片描述

    生命周期映射关系表

    beforeCreate -> 使用 setup()
    created -> 使用 use setup()
    beforeMount ->onBeforeMount
    mounted -> onMounted
    beforeUpdate -> onBeforeUpdate
    updated -> onUpdated
    beforeDestroy-> onBeforeUnmount
    destroyed ->onUnmounted
    activated -> onActivated
    deactivated -> onDeactivated
    errorCaptured -> onErrorCaptured

    映射关系说明

    beforeCreate -> 使用 setup() 函数替代

    Vue 2 中的 beforeCreate 钩子函数在 Vue 3 中被废弃了,使用 setup() 函数替代。在 setup() 函数中可以访问到 props、data、computed、methods 等属性。

    created -> 使用 setup() 函数替代

    Vue 2 中的 created 钩子函数在 Vue 3 中被废弃了,使用 setup() 函数替代。在 setup() 函数中可以访问到 props、data、computed、methods 等属性。

    beforeMount -> onBeforeMount

    Vue 2 中的 beforeMount 钩子函数在 Vue 3 中被重命名为 onBeforeMount。

    mounted -> onMounted

    Vue 2 中的 mounted 钩子函数在 Vue 3 中被重命名为 onMounted。

    beforeUpdate -> onBeforeUpdate

    Vue 2 中的 beforeUpdate 钩子函数在 Vue 3 中被重命名为 onBeforeUpdate。

    updated -> onUpdated

    Vue 2 中的 updated 钩子函数在 Vue 3 中被重命名为 onUpdated。

    beforeDestroy -> onBeforeUnmount

    Vue 2 中的 beforeDestroy 钩子函数在 Vue 3 中被重命名为 onBeforeUnmount。

    destroyed -> onUnmounted

    Vue 2 中的 destroyed 钩子函数在 Vue 3 中被重命名为 onUnmounted。

    activated -> onActivated

    Vue 2 中的 activated 钩子函数在 Vue 3 中被重命名为 onActivated 。

    deactivated -> onDeactivated

    Vue 2 中的 deactivated 钩子函数在 Vue 3 中被重命名为 onDeactivated。

    errorCaptured -> onErrorCaptured

    Vue 2 中的 errorCaptured 钩子函数在 Vue 3 中被重命名为 onErrorCaptured。

    vue3新增生命周期钩子函数

    onRenderTracked

    onRenderTracked 函数会在组件渲染时被调用,它接收两个参数:target 和 key。target 是被追踪的组件实例,key是被追踪的属性名。该函数可以用来追踪组件的渲染过程,例如记录组件渲染的次数、渲染的时间等信息。

    onRenderTriggered

    onRenderTriggered 函数会在组件渲染时被调用,它接收一个参数:target。target是被追踪的组件实例。该函数可以用来追踪组件的渲染触发过程,例如记录组件渲染的原因、渲染的时间等信息。

    如何使用

    import { onRenderTracked, onRenderTriggered } from 'vue'
    //这两个函数都是调试工具函数,只在开发环境下生效。
    //可以通过在组件中使用 debugger 语句来触发这两个函数。
    //在组件渲染时,这两个函数会被触发,并输出相应的信息。
    //这些信息可以帮助开发者更好地理解组件的渲染过程,从而优化组件的性能。
    export default {
      setup() {
        onRenderTracked((target, key) => {
          console.log(`Render tracked: ${target} - ${key}`)
        })
    
        onRenderTriggered(target => {
          console.log(`Render triggered: ${target}`)
        })
    
        return {
          // ...
        }
      }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
  • 相关阅读:
    log4j日志漏洞问题
    怎么压缩gif图大小,gif压缩到微信表情
    python 办公自动化(Excel)
    2023年【金属非金属矿山(地下矿山)安全管理人员】考试题库及金属非金属矿山(地下矿山)安全管理人员模拟考试题
    金仓数据库 KDTS 迁移工具使用指南(2. 简介)
    花生壳微信公众号开发配置
    Github每日精选(第15期):Go 的快速 HTTP 包 fasthttp
    《C 陷阱与缺陷 》阅读概要
    云计算-存算一体-EDA-技术杂谈
    Zookeeper
  • 原文地址:https://blog.csdn.net/qq_43277404/article/details/134249460