ue 生命周期详解及实例分析

news/2024/9/24 23:27:57/

Vue.js 是一个流行的前端框架,它具有丰富的生命周期钩子函数,用于管理组件的创建、挂载、更新和销毁等过程。理解 Vue 生命周期对于开发高质量的 Vue 应用至关重要。本文将深入探讨 Vue 生命周期的各个阶段,并结合实例进行详细分析。

Vue 生命周期概述 Vue
组件的生命周期包括创建阶段、挂载阶段、更新阶段和销毁阶段,每个阶段都有对应的生命周期钩子函数可以供开发者使用。下面是 Vue
生命周期的主要阶段:

创建阶段(Creation)

  1. beforeCreate: 在实例初始化之后,数据观测 (data 属性) 和事件配置之前被调用。
  2. created: 实例已经创建完成后被调用。在这一步,实例已完成数据观测 (data 属性)、属性和方法的运算,但是 DOM
    元素还没有被创建。 挂载阶段(Mounting)
  3. beforeMount: 在挂载开始之前被调用:相关的 render 函数首次被调用。 mounted: el 被新创建的 vm.$el
    替换,并挂载到实例上去之后调用该钩子。 更新阶段(Updating)
  4. beforeUpdate: 数据更新时调用,发生在虚拟 DOM 重新渲染和打补丁之前。
  5. updated: 由于数据更改导致的虚拟 DOM 重新渲染和打补丁后调用。 销毁阶段(Destruction)
  6. beforeDestroy: 实例销毁之前调用。在这一步,实例仍然完全可用。
  7. destroyed: 实例销毁后调用。该钩子被调用后,Vue
    实例指示的所有东西都会解绑定,所有的事件监听器会被移除,所有的子实例也会被销毁。

示例分析
现在,让我们通过一个简单的示例来演示 Vue 生命周期的使用和效果。

html

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Vue 生命周期示例</title><script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
</head>
<body><div id="app"><p>{{ message }}</p></div><script>javascript">var app = new Vue({el: '#app',data: {message: 'Hello Vue!'},beforeCreate: function () {console.log('beforeCreate hook');},created: function () {console.log('created hook');},beforeMount: function () {console.log('beforeMount hook');},mounted: function () {console.log('mounted hook');},beforeUpdate: function () {console.log('beforeUpdate hook');},updated: function () {console.log('updated hook');},beforeDestroy: function () {console.log('beforeDestroy hook');},destroyed: function () {console.log('destroyed hook');}});</script>
</body>
</html>

解析

在这个示例中,我们创建了一个简单的 Vue 应用,显示了一个包含 “Hello Vue!”
文字的段落。同时,我们在控制台中输出了每个生命周期钩子函数的调用情况。

  1. beforeCreate 和 created:在实例创建之前和之后输出,分别展示了初始化阶段。
  2. beforeMount 和 mounted:在组件挂载到 DOM 前后输出,展示了 DOM 渲染前后的生命周期。
  3. beforeUpdate 和 updated:在数据更新前后输出,展示了数据更新导致的生命周期。
  4. beforeDestroy 和 destroyed:在组件销毁前后输出,展示了组件销毁时的生命周期。

通过以上示例和解析,希望读者能更好地理解和运用 Vue 生命周期,优化自己的 Vue 应用程序。

总结来说,Vue 生命周期提供了丰富的钩子函数来帮助开发者在不同阶段执行逻辑操作,从而更好地管理和控制组件的行为和状态。对于复杂的 Vue
应用来说,深入理解和有效利用生命周期是提高代码质量和性能的重要一步。

希望本文能为您对 Vue 生命周期有所帮助!


http://www.ppmy.cn/news/1470014.html

相关文章

Linux常⽤服务器构建-samba

目录 1. 介绍 2. 安装 3. 配置 3.1 创建存放共享⽂件的路径 3.2 创建samba账户 4 重启samba 5. 访问共享⽂件 5.1 mac下访问⽅式 5.2 windows下访问⽅式 1. 介绍 Samba 是在 Linux 和 UNIX 系统上实现 SMB 协议的⼀个免费软件&#xff0c;能够完成在 windows 、 mac 操作系统…

Day07-06_13【CT】LeetCode手撕—1. 两数之和

目录 题目1-思路2- 实现⭐1. 两数之和——题解思路 3- ACM实现 题目 原题连接&#xff1a;1. 两数之和 1-思路 哈希表 利用哈希表存储 key 数组元素值 ——> value 数组下标遍历数组 2- 实现 ⭐1. 两数之和——题解思路 class Solution {public int[] twoSum(int[] nums…

Python项目开发实战:网站图片抓取工具(案例教程)

一、项目背景与需求 随着互联网的发展,网站上的图片资源日益丰富,但有时候我们可能希望将某个网站上的图片批量下载到本地,以便进行后续的分析、处理或备份。因此,开发一个网站图片抓取工具就显得尤为重要。本项目旨在使用Python语言开发一个功能强大、易于使用的网站图片抓…

GPU性能相关的工具

GPU性能相关的工具 GPU的性能测试工具比较多&#xff0c;已知的各个开发厂家是有自己开发的性能测试工具&#xff0c;一般市场上开源或通用的性能测试工具&#xff0c;主要是跑定制的渲染场景&#xff0c;统计平均帧率&#xff0c;经过包装得到跑分值。 整体上可以分成两类&am…

【需求管理】软件需求开发和管理文档(原件Word)

1. 目的 2. 适用范围 3. 参考文件 4. 术语和缩写 5. 需求获取的方式 5.1. 与用户交谈向用户提问题 5.1.1. 访谈重点注意事项 5.1.2. 访谈指南 5.2. 参观用户的工作流程 5.3. 向用户群体发调查问卷 5.4. 已有软件系统调研 5.5. 资料收集 5.6. 原型系统调研 5.6.1. …

云顶之弈-测试报告

一. 项目背景 个人博客系统采用前后端分离的方法来实现&#xff0c;同时使用了数据库来存储相关的数据&#xff0c;同时将其部署到云服务器上。前端主要有四个页面构成&#xff1a;登录页、列表页、详情页以及编辑页&#xff0c;以上模拟实现了最简单的个人博客系统。其结合后…

【前端】Git 常用

文章目录 一、git 配置1.1 查看系统配置1.2 查看当前用户配置1.3 查看当前git用户名1.4 查看当前git邮箱1.5 查看当前仓库配置信息1.6 修改git用户名1.7 修改git邮箱 二、git 常用命令2.1 git init2.2 git clone2.3 git status2.4 git add2.5 git commit2.5 git log2.6 git pul…

SSH隧道(客户端的数据加密并通过 SSH 服务器转发到目标服务器)

SSH隧道简介 SSH 隧道&#xff08;SSH Tunneling&#xff09;是通过 SSH&#xff08;Secure Shell&#xff09;协议创建的安全通道&#xff0c;用于将流量从一个网络传输到另一个网络。 SSH 隧道可以用来保护网络数据的传输&#xff0c;通常用于穿越防火墙、隐藏流量、访问受…