Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

vue2的生命周期

作者:﹏〃对不起╮他是为你哭了   发布日期:2026-02-04   浏览:36

// Vue 2 的生命周期钩子示例

new Vue({
  el: '#app',
  data() {
    return {
      message: 'Hello Vue!'
    }
  },
  // 在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。
  beforeCreate() {
    console.log('beforeCreate: 实例创建之前');
    // 此时,data 和 methods 都未初始化,无法访问到 this.message 或 this.greet
  },
  // 在实例创建完成后被调用。此时实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调。
  created() {
    console.log('created: 实例创建完成');
    // 现在可以访问到 this.message 和 this.greet
    console.log(this.message);
  },
  // 在挂载开始之前被调用:相关的 render 函数首次被调用。
  beforeMount() {
    console.log('beforeMount: 挂载开始之前');
    // 此时 template 已经编译为 render 函数,但还未渲染到页面上
  },
  // 在挂载完成后被调用:el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。
  mounted() {
    console.log('mounted: 挂载完成');
    // 现在可以访问到真实的 DOM 元素了
  },
  // 数据更新时调用,发生在虚拟 DOM 打补丁之前。
  beforeUpdate() {
    console.log('beforeUpdate: 数据更新前');
    // 此时可以访问到旧的 DOM 状态
  },
  // 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。
  updated() {
    console.log('updated: 数据更新后');
    // 现在可以访问到更新后的 DOM 状态
  },
  // 实例销毁之前调用。在这一步,实例仍然完全可用。
  beforeDestroy() {
    console.log('beforeDestroy: 销毁前');
    // 这里可以进行一些资源清理工作
  },
  // 实例销毁后调用。此时 Vue 实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁。
  destroyed() {
    console.log('destroyed: 销毁后');
  }
});

解释说明:

  1. beforeCreate: 在实例初始化之后,数据观测 (data observer) 和 event/watcher 事件配置之前被调用。此时 datamethods 都未初始化,无法访问到 this.messagethis.greet

  2. created: 在实例创建完成后被调用。此时实例已完成以下的配置:数据观测 (data observer),属性和方法的运算,watch/event 事件回调。现在可以访问到 this.messagethis.greet

  3. beforeMount: 在挂载开始之前被调用:相关的 render 函数首次被调用。此时 template 已经编译为 render 函数,但还未渲染到页面上。

  4. mounted: 在挂载完成后被调用:el 被新创建的 vm.$el 替换,并挂载到实例上去之后调用该钩子。现在可以访问到真实的 DOM 元素了。

  5. beforeUpdate: 数据更新时调用,发生在虚拟 DOM 打补丁之前。此时可以访问到旧的 DOM 状态。

  6. updated: 由于数据更改导致的虚拟 DOM 重新渲染和打补丁,在这之后会调用该钩子。现在可以访问到更新后的 DOM 状态。

  7. beforeDestroy: 实例销毁之前调用。在这一步,实例仍然完全可用。这里可以进行一些资源清理工作。

  8. destroyed: 实例销毁后调用。此时 Vue 实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁。

上一篇:vue中组件的props属性

下一篇:vue3动态组件component

大家都在看

vue.js devtools用法

three.js vue

vue js for循环

vue.min.js 本地引入

highlight.js vue

vue.config.js 配置

vue.config.js 配置代理

vue.config.js configu

node.js vue

vue3 写法

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站