美文网首页
vue3.0新特性学习笔记2(生命周期)

vue3.0新特性学习笔记2(生命周期)

作者: XKolento | 来源:发表于2021-05-18 16:42 被阅读0次
    1.添加我们的生命周期钩子

    Vue3 中,要在 setup() 函数中使用生命周期来完成需求
    导入:

    import { onMounted, onUpdated, onUnmounted } from 'vue'
    

    除去beforeCreatecreated 之外,在我们的 setup 方法中,有9个旧的生命周期钩子,我们可以在setup 方法中访问

    beforeCreate -> use setup()
    created -> use setup()
    beforeMount -> onBeforeMount
    mounted -> onMounted
    beforeUpdate -> onBeforeUpdate
    updated -> onUpdated
    beforeDestroy -> onBeforeUnmount
    destroyed -> onUnmounted
    errorCaptured -> onErrorCaptured

    import { onBeforeMount, onMounted, onBeforeUpdate, onUpdated, onBeforeUnmount, onUnmounted, onActivated, onDeactivated, onErrorCaptured } from 'vue'
    
    export default {
      setup() {
        onBeforeMount(() => {
          // ... 
        })
        onMounted(() => {
          // ... 
        })
        onBeforeUpdate(() => {
          // ... 
        })
        onUpdated(() => {
          // ... 
        })
        onBeforeUnmount(() => {
          // ... 
        })
        onUnmounted(() => {
          // ... 
        })
        onActivated(() => {
          // ... 
        })
        onDeactivated(() => {
          // ... 
        })
        onErrorCaptured(() => {
          // ... 
        })
      }
    }
    
    生命周期

    这些生命周期钩子只能在 setup() 内部同步使用,因为他们依赖正在调用 setup() 的组件实例。

    因为 setup 是围绕 beforeCreatecreated 生命周期钩子运行的,所以不需要显式地定义它们。换句话说,在这些钩子中编写的任何代码都应该直接在 setup 函数中编写。

    2.新增的钩子函数

    onRenderTracked
    onRenderTriggered

    两个钩子函数都接收一个 DebuggerEvent:

    export default {
      onRenderTriggered(e) {
        debugger
        // 检查哪个依赖性导致组件重新渲染
      },
    }
    

    相关文章

      网友评论

          本文标题:vue3.0新特性学习笔记2(生命周期)

          本文链接:https://www.haomeiwen.com/subject/bnhyjltx.html