【Vue学习】Vue 组件实例的生命周期(四个阶段,八个钩子)

一、为什么要理解生命周期?

理解生命周期就像是知道了一部电影的剧情走向,能让你在适当的时机做出反应。Vue 生命周期的钩子让你可以在不同的阶段插入你的逻辑,像是提前准备、后期清理或者在数据更新时做点事情。这种"精确控制"的能力会让你在开发过程中更加得心应手,避免做出一些不必要的错误。

二. Vue 的四个阶段和八个生命周期钩子函数

html 复制代码
<template>
  <div id="app">
    <p id="box">{{msg}}</p>
    <button @click="change">更新</button>
  </div>
</template>

<script>
export default {
  data () {
    return {
      msg: 'hello'
    }
  },
  methods: {
    change () {
      this.msg = 'hello world'
    }
  },
  beforeCreate () {
    console.log('---------------->beforeCreate')
    console.log(this.msg, document.getElementById('box'))
  },
  created () {
    console.log('---------------->created')
    console.log(this.msg, document.getElementById('box'))
  },
  beforeMount () {
    console.log('---------------->beforeMount')
    console.log(this.msg, document.getElementById('box'))
  },
  mounted () {
    console.log('---------------->mounted')
    console.log(this.msg, document.getElementById('box'))
  },
  beforeUpdate () {
    console.log('---------------->beforeUpdate')
    console.log(this.$el.innerHTML)
    console.log(this.msg, document.getElementById('box'))
  },
  updated () {
    console.log('---------------->updated')
    console.log(this.$el.innerHTML)
    console.log(this.msg, document.getElementById('box'))
  }
}
</script>
相关推荐
澄江静如练_7 小时前
优惠券提示文案表单项(原生div写的)
前端·javascript·vue.js
C_心欲无痕7 小时前
ts - 关于Object、object 和 {} 的解析与区别
开发语言·前端·javascript·typescript
Irene19917 小时前
Vue2 与 Vue3 响应式实现对比(附:Proxy 详解)
vue.js·响应式实现
全栈前端老曹7 小时前
【包管理】read-pkg-up 快速上手教程 - 读取最近的 package.json 文件
前端·javascript·npm·node.js·json·nrm·package.json
saoys7 小时前
Opencv 学习笔记:一文掌握四种经典图像滤波(均值 / 高斯 / 中值 / 双边)
笔记·opencv·学习
●VON7 小时前
可信 AI 认证:从技术承诺到制度信任
人工智能·学习·安全·制造·von
JQLvopkk7 小时前
Vue框架技术详细介绍及阐述
前端·javascript·vue.js
笔COOL创始人8 小时前
requestAnimationFrame 动画优化实践指南
前端·javascript·面试
sophie旭8 小时前
性能监控之首屏性能监控小实践
前端·javascript·性能优化
+VX:Fegn08958 小时前
计算机毕业设计|基于springboot + vue物流配送中心信息化管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·小程序·课程设计