Vue学习笔记之生命周期函数

生命周期示意图如下所示:

  1. beforeCreate:组件初始化之前触发该事件
  2. created:组件初始化完毕触发该事件
  3. beforeMount:Vue应用对象挂载DOM结点之前触发该事件
  4. mounted:DOM结点挂载成功之后触发该事件
  5. beforeUpdate:数据更新之前触发该事件
  6. updated:数据更新之后触发该事件
  7. beforeUnmount:DOM结点卸载之前触发该事件
  8. unmountd:结点卸载之后触发该事件

由此可见触发事件基本是成对出现,具体测试代码如下所示:

html 复制代码
<script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
<div id="app">
    <div>
        <span>文本框</span>
        <p>Message is:{{message}}</p>
        <input v-model="message" placeholder="edit me" />
    </div>
</div>
<script>
    const { createApp } = Vue;
    createApp({
        data(){
            return {
                message: '曹德华'
            }
        },
        beforeCreate() {
            console.log(`组件创建之前调用`);
        },
        created() {
            console.log(`组件已创建`);
        },
        beforeMount() {
            console.log(`组件挂载DOM之前调用`);
        },
        mounted() {
            console.log(`组件已挂载DOM`);
        },
        beforeUpdate() {
            console.log(`数据更新之前调用`);
        },
        updated() {
            console.log(`数据已更新`);
        }
    }).mount('#app');
</script>

控制台输出结果:

组件创建之前调用

组件已创建

组件挂载DOM之前调用

组件已挂载DOM

修改输入框的内容,额外输出内容:

数据更新之前调用

数据已更新

相关推荐
SuperEugene6 小时前
表单最佳实践:从 v-model 到自定义表单组件(含校验)
前端·javascript·vue.js
我叫黑大帅12 小时前
Vue3和Uniapp的爱恨情仇:小白也能懂的跨端秘籍
前端·javascript·vue.js
洋洋技术笔记13 小时前
Vue实例与数据绑定
前端·vue.js
牛奶1 天前
Vue 基础理论 & API 使用
前端·vue.js·面试
牛奶1 天前
Vue 底层原理 & 新特性
前端·vue.js·面试
pe7er1 天前
状态提升:前端开发中的状态管理的设计思想
前端·vue.js·react.js
_AaronWong1 天前
Electron 实现仿豆包划词取词功能:从 AI 生成到落地踩坑记
前端·javascript·vue.js
wuhen_n1 天前
双端 Diff 算法详解
前端·javascript·vue.js
爱勇宝1 天前
别再混用了!import.meta.env 与 process.env 的本质差异一次讲透
前端·javascript·vue.js
从文处安2 天前
「九九八十一难」组合式函数到底有什么用?
前端·vue.js