码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Vue中的组件生命周期


    一个组件从创建到销毁的过程 成为生命周期。
    在我们使用Vue3 组合式API 是没有 beforeCreate 和 created 这两个生命周期的

    组件生命周期如下:

    在这里插入图片描述

    • onBeforeMount() 在组件DOM实际渲染安装之前调用。在这一步中,根元素还不存在。
    • onMounted() 在组件的第一次渲染后调用,该元素现在可用,允许直接DOM访问
    • onBeforeUpdate() 数据更新时调用,发生在虚拟 DOM 打补丁之前。
    • onUpdated() DOM更新后,updated的方法即会调用。
    • onBeforeUnmount() 在卸载组件实例之前调用。在这个阶段,实例仍然是完全正常的。
    • onUnmounted() 卸载组件实例后调用。调用此钩子时,组件实例的所有指令都被解除绑定,所有事件侦听器都被移除,所有子组件实例被卸载。
    选项API 和组合式API钩子对比
    选项式API组合式API
    beforeCreateNot needed*
    createdNot needed*
    beforeMountonBeforeMount
    mountedonMounted
    beforeUpdateonBeforeUpdate
    updatedonUpdated
    beforeUnmountonBeforeUnmount
    unmountedonUnmounted
    errorCapturedonErrorCaptured
    renderTrackedonRenderTracked
    renderTriggeredonRenderTriggered
    activatedonActivated
    deactivatedonDeactivated

    代码示例:

    <template>
       <h3>我是组件h3>
       <div ref="div">{{str}}div>
       <button @click="change">修改strbutton>
    template>
    <script setup lang="ts">
    import { ref,onBeforeMount,onMounted,onBeforeUpdate,onUpdated,onBeforeUnmount,onUnmounted } from 'vue';
    const str=ref<string>('我是大漂亮');
    console.log(str);
    const div=ref<HTMLDivElement>();
    const change=()=>{
       str.value='小可爱';
    }
    onBeforeMount(()=>{
       console.log('创建前',div.value);
    })
    onMounted(()=>{
       console.log('挂载完成',div.value);
    })
    onBeforeUpdate(()=>{
       console.log('更新前')
    })
    onUpdated(()=>{
       console.log('更新完成')
    })
    onBeforeUnmount(()=>{
       console.log('卸载之前')
    })
    onUnmounted(()=>{
       console.log('卸载完成')
    })
    script>
    <style scoped>
    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

    页面加载完成:
    Ref<“我是大漂亮”>
    创建前 undefined
    挂载完成

    <div>小可爱div>"
    
    • 1
    点击button后:

    控制台打印:
    更新前
    更新完成

  • 相关阅读:
    [网络]--->网络相关名词,网关,子网掩码...
    Mysql之部分表主从搭建及新增表
    家政服务接单小程序开发源码 家政保洁上门服务小程序源码 开源完整版
    MySQL根据备注查询表、字段
    CDMP考试时间与报名方式
    PLC 学习day01 了解PLC 的组成和知识。
    【JavaEE】操作系统与进程
    神经内分泌肿瘤如何分级,神经系统分级调节概念
    MySQL中from_unixtime和unix_timestamp处理数据库时间戳转换问题-案例
    国产操作系统上安装软件包及环境管理系统Conda _ 统信 _ 麒麟
  • 原文地址:https://blog.csdn.net/weixin_42491648/article/details/128088401
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号