Vue3生命周期

文章目录


前言

组件从创建到销毁的整个过程就是生命周期

钩子函数

提示:VUE3生命周期:

1、创建初始化

  1. 实例创建之前:beforeCreate
  2. 实例创建完毕:created

2、DOM挂载

  1. DOM挂载之前:beforeMount
  2. DOM挂载完毕:mounted

3、数据更新

  1. 数据更新之前:beforeUpdate
  2. 数据更新完毕:updated

4、结束 DOM 卸载

  1. 结束 DOM 卸载之前:beforeUnmount
  2. 结束 DOM 卸载完毕:unmounted

每一个阶段都有两个钩子函数,每一个钩子函数都是一个配置项

最常用的是:mounted 函数

实际应用中,在挂载完成钩子函数中,要发送请求给后端程序,获取后端返回的真实数据

代码展示1

使用Vue.js实现生命周期演示页面

提示:以下是本篇文章正文内容,下面案例可供参考

下面代码展示了Vue.js框架中,不同生命周期钩子函数的基本功能和使用方法,以及如何在不同的阶段执行相应的操作。

javascript 复制代码
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <div id="app">
        <h1>创建初始化  挂载  更新  结束挂载----(vue生命周期)</h1>
        <h1 @click="f1">{{name}}</h1>
        <p v-for="(item, index) in businesslist">{{item}}</p>
    </div>
</body>
<script src="../js/vue3.js"></script>
<script>
    let vm = Vue.createApp({
        data() {
            return {
                name: '猫抓',
                gamelist: []
            }
        },
        methods: {
            f1(){
                this.name = this.name+'老鼠'
            }
        },
        beforeCreate() {
            console.log('创建初始化之前');
        },
        created() {
            console.log('创建初始化完成');
        },
        beforeMount() {
            console.log('挂载之前');
        },
        mounted() {
            console.log('挂载完成');
            // 实际应用中,在挂载完成钩子函数中,要发送请求给后端程序,获取后端返回的真实数据
            this.gamelist.push('汤姆')
            this.gamelist.push('杰瑞')
            this.gamelist.push('斯派克')
        },
        beforeUpdate() {
            console.log('更新之前');
        },
        updated() {
            console.log('更新结束');
        },
        beforeUnmount() {
            console.log('结束挂载之前');
        },
        unmounted() {
            console.log('结束挂载完成');
        },
    })

    vm.mount('#app')
</script>
</html>

输出效果:

在控制台输入vm . unmount()结束(实例名字叫vm)

上面的代码是一个使用Vue.js实现生命周期演示页面的示例。

其中包括了Vue.js提供的生命周期钩子函数,分别是:beforeCreatecreatedbeforeMountmountedbeforeUpdateupdatedbeforeUnmountunmounted

这些钩子函数会在不同的阶段被调用,用于对应阶段的操作。

在页面中,定义了一个id为"app"的div容器,其中包含了一个标题和一个通过v-for指令遍历businesslist数组的p标签。

在Vue实例中,定义了两个数据属性:namegamelist(模拟猫和老鼠游戏为例),以及一个方法f1。对应的生命周期钩子函数中分别输出了相应的信息,以便在控制台中查看功能实现的过程。

代码展示2

引入

创建:setup

挂载:onBeforeMountonMounted

更新:onBeforUpdateonUpdated

卸载:onBeforeUnmountonUnmounted

相关推荐
ywf12151 小时前
前端的dist包放到后端springboot项目下一起打包
前端·spring boot·后端
恋猫de小郭1 小时前
2026,Android Compose 终于支持 Hot Reload 了,但是收费
android·前端·flutter
hpoenixf7 小时前
2026 年前端面试问什么
前端·面试
还是大剑师兰特7 小时前
Vue3 中的 defineExpose 完全指南
前端·javascript·vue.js
泯泷7 小时前
阶段一:从 0 看懂 JSVMP 架构,先在脑子里搭出一台最小 JSVM
前端·javascript·架构
mengchanmian8 小时前
前端node常用配置
前端
华洛8 小时前
利好打工人,openclaw不是企业提效工具,而是个人助理
前端·javascript·产品经理
xkxnq8 小时前
第六阶段:Vue生态高级整合与优化(第93天)Element Plus进阶:自定义主题(变量覆盖)+ 全局配置与组件按需加载优化
前端·javascript·vue.js
A黄俊辉A9 小时前
vue css中 :global的使用
前端·javascript·vue.js
小码哥_常10 小时前
被EdgeToEdge适配折磨疯了,谁懂!
前端