专业的编程技术博客社区

网站首页 > 博客文章 正文

vue的生命周期及理解?示例代码(vue生命周期的四个阶段)

baijin 2024-10-09 07:57:11 博客文章 11 ℃ 0 评论

Vue.js的生命周期是Vue实例从创建到销毁的整个过程中所经历的一系列阶段,每个阶段都有对应的生命周期函数,开发者可以在这些函数中编写代码来处理不同的逻辑。


以下是Vue.js的生命周期函数及其作用:


  1. beforeCreate:实例刚在内存中被创建出来,此时页面中还没有任何的DOM元素,也没有初始化数据。
  2. created:实例已经在内存中创建完成,此时已经完成了数据的初始化,但是页面中还没有开始渲染。
  3. beforeMount:此时Vue实例已经将模板编译成了渲染函数,并且将其挂载到了页面的DOM节点上,但是还没有开始渲染。
  4. mounted:此时Vue实例已经将模板编译成了渲染函数,并且将其挂载到了页面的DOM节点上,页面已经完成了渲染,此时可以进行一些DOM操作。
  5. beforeUpdate:当Vue实例中的数据发生变化时,会触发beforeUpdate生命周期函数,此时虚拟DOM已经重新渲染完成,但是页面上的DOM还没有被重新渲染。
  6. updated:当Vue实例中的数据发生变化时,会触发updated生命周期函数,此时虚拟DOM已经重新渲染完成,页面上的DOM也已经重新渲染完成,可以进行一些DOM操作。
  7. beforeDestroy:Vue实例即将被销毁,此时Vue实例中的数据和方法仍然可用。
  8. destroyed:Vue实例已经被销毁,此时Vue实例中的数据和方法已经不可用。

下面是一个示例代码,演示了Vue实例的生命周期函数的使用:

<template>
  <div>
    <p>{{ message }}</p>
    <button @click="changeMessage">改变消息</button>
  </div>
</template>
<script>
  export default {
    data() {
      return {
        message: 'Hello, Vue!'
      }
    },
    beforeCreate() {
      console.log('beforeCreate')
    },
    created() {
      console.log('created')
    },
    beforeMount() {
      console.log('beforeMount')
    },
    mounted() {
      console.log('mounted')
    },
    beforeUpdate() {
      console.log('beforeUpdate')
    },
    updated() {
      console.log('updated')
    },
    beforeDestroy() {
      console.log('beforeDestroy')
    },
    destroyed() {
      console.log('destroyed')
    },
    methods: {
      changeMessage() {
        this.message = 'Hello, World!'
      }
    }
  }
</script>


在这个示例中,我们定义了一个Vue组件,包含了一个数据message和一个方法changeMessage。在组件中,我们实现了所有生命周期函数,并且在控制台中打印了它们的名称。当我们点击按钮时,触发了changeMessage方法,此时数据message发生变化,Vue实例中的数据发生变化,触发

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表