vue diff算法与虚拟dom知识整理(1) 概念叙述

news2025/1/2 2:57:58

今天开始 我们来学习 虚拟dom和diff算法

首先 我们要简单了解 虚拟dom和diff算法在vue中的作用

例如 下图左侧是我们的加 然后 我们要将 家按图右改造一下
在这里插入图片描述
我们先来找一下不同
在这里插入图片描述
如图卷出来的效果 我们起居室想多装一个沙发 卧室床改了位置 电视不要了
阳台小改了一下

其实改动还是比较小的

那么 我们要怎么去改装它呢?
最笨的方法 也莫过于拆掉重新装修了
可能现实中大家觉得很傻 但其实编程中 还是很多人会这样写的 改个变量 整个重新渲染

就和现实中一样 这样效率很低 而且 要浪费好多钱 编程中 这样写也是浪费性能的

而这里 我们实际需要的是一个diff
diff的意思 是一个最细化比对 最小量更新
简单说 哪里改了重新渲染哪里
diff在vue底层中还是比较关键的
例如 这样的一个改动
在这里插入图片描述
这里 可以就理解为 一个 v-if
条件没达到 span就没上去 后面达到了 span就要上去了
这里 我们总不可能将整个box重新渲染 肯定还是想办法将这个span插进去

这里 大概就是diff的一个概念后续我会持续更新diff算法的内容帮助大家不但理解 也能写出一个小dom

然后我们再来简单说说 虚拟dom

例如 我们在html界面上有一块这样的元素
在这里插入图片描述
我们就可以用这样的形式 在js中呈现
在这里插入图片描述
这里 我们sel就是元素标签类型 最上面div 下面一个h3 一个 ul
children代表子集 class代表类名 然后 text则代表文本

这么依赖 现在说概念大家就都能说上两句了 但面试官肯定是越问越深的 这还远远不够

后续我会继续更新 大家可以和我一起学习一下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/480801.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

每日学术速递4.27

Subjects: cs.CV 1.End-to-End Spatio-Temporal Action Localisation with Video Transformers 标题:使用视频转换器进行端到端时空动作定位 作者:Alexey Gritsenko, Xuehan Xiong, Josip Djolonga, Mostafa Dehghani, Chen Sun, Mario Lučić, Corde…

IS-IS协议基础知识

文章目录 前言介绍地址格式报文格式区域及路由器类型区域类型路由器类型Level-1 路由器Level-2 路由器Level-1-2路由器 IS-IS 网络类型DIS及伪节点伪节点DIS与OSPF的DR/BDR不同之处 IS-IS 邻接关系握手报文邻接关系的建立 IS-IS 链路状态数据库概述数据库同步报文泛洪机制数据库…

【网络编程】socket套接字

文章目录 一、源IP和目的IP二、端口号port三、TCP/UDP协议3.1 网络字节流 四、socket套接字4.1 socket常见接口4.2 sockaddr结构体 五、总结 一、源IP和目的IP 如果我们的台式机或者笔记本没有IP地址就无法上网,而因为每台主机都有IP地址,所以注定了数据…

Prometheus Exporter开发

Prometheus Exporter开发 Exporter数据格式介绍 Exporter徒手开发 Exporter4种指标类型演示 Exporter自定义注册表 Exporter 基于Collector的模块开发 Exporter介绍 数据格式 通讯协议 HTTP协议服务端实现了gzip 数据格式 text/plain:文本协议 数据格式 prometheus…

MySQL性能监控全掌握,快来get关键指标及采集方法!

数据库中间件监控实战,MySQL中哪些指标比较关键以及如何采集这些指标了。帮助提早发现问题,提升数据库可用性。 1 整体思路 监控哪类指标? 如何采集数据? 第10讲监控方法论如何落地? 这些就可以在MySQL中应用起来。…

ChatGPT提示词工程(四):Inferring推断

目录 一、说明二、安装环境三、推断(Inferring)1. 推断情绪(正面 / 负面)2. 确定情绪的类型3. 识别愤怒4. 从客户评论中提取产品和公司名称5. 一次完成多项任务6. 推断主题7. 主题中是否包含给定的主题 一、说明 这是吴恩达 《Ch…

【栈】的实现

🖊作者 : D. Star. 📘专栏 : 数据结构 😆今日分享 : —>📖区块链 : 小明向你借100块钱,说一周后还你,然后你拿个喇叭大喊一声:我是某某,小明向我借了100块&#xff0c…

Redis缓存(双写一致性问题)

Redis缓存(双写一致性问题) 1 什么是缓存?1.1 为什么要使用缓存1.2 如何使用缓存 2 添加缓存2.1 、缓存模型和思路2.2、代码如下 3 缓存更新策略3.1 、数据库缓存不一致解决方案:3.2 、数据库和缓存不一致采用什么方案 4 实现商铺和缓存与数…

【C生万物】 指针篇 (初级)

欢迎来到 Claffic 的博客 💞💞💞 👉 专栏:《C生万物 | 先来学C》👈 前言: 面对C语言,很多童鞋都会高呼:指针难,指针难&#x…

【计算机专业漫谈】【计算机系统基础学习笔记】W2-1十进制数与二进制数,各进制数直接的转换

利用空档期时间学习一下计算机系统基础,以前对这些知识只停留在应试层面,今天终于能详细理解一下了。参考课程为南京大学袁春风老师的计算机系统基础MOOC,参考书籍也是袁老师的教材,这是我的听课自查资料整理后的笔记 W2-1十进制…

ChatGPT背后的技术:人类反馈强化学习RLHF

文章目录 前言Chat GPT是如何基于RLHF进行训练的RLHF 技术分解预训练语言模型训练奖励模型强化学习微调预训练模型 局限性参考 前言 随着OpenAI推出的Chat GPT火热出圈,Chat GPT背后的技术原理之一,人类反馈强化学习RLHF (Reinforcement Learning from …

Matplotlib 网格线

我们可以使用 pyplot 中的 grid() 方法来设置图表中的网格线。 grid() 方法语法格式如下: matplotlib.pyplot.grid(bNone, whichmajor, axisboth, ) 参数说明: b:可选,默认为 None,可以设置布尔值,true…

prometheus实战之二:使用常见指标

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本文是《prometheus实战》系列的第二篇,在《prometheus实战之一:用ansible部署》一文咱们部署了prometheus服务&#xff0c…

防护服穿戴检测识别算法 yolov8

防护服穿戴检测识别系统基于yolov8网络模型图片数据识别训练,算法模型自动完成对现场人员是否按照要求穿戴行为实时分析。YOLOv8 算法的核心特性和改动可以归结为如下:提供了一个全新的 SOTA 模型,包括 P5 640 和 P6 1280 分辨率的目标检测网…

【开发工具】 我居然可以使用Office Tool Plus 安装上Office 真的是太不可思议了

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

【开发工具】 Office Tool Plus 居然也可以部署 Office 365 我的天 真的是太厉害了

🚀 个人主页 极客小俊 ✍🏻 作者简介:web开发者、设计师、技术分享博主 🐋 希望大家多多支持一下, 我们一起进步!😄 🏅 如果文章对你有帮助的话,欢迎评论 💬点赞&#x1…

人不成熟的五大特征-读后感

原文地址:人不成熟的五大特征-百度经验 1 立即要回报 1 所有简单的快的,别人也能做,这并不能使你超过别人。 2 做出别人做不出来的复杂成果,需要较长的时间和持续的学习,得到就得付出,时间,资源…

Windows10本地搭建网站教程 - 内网穿透发布公网访问

文章目录 概述1. 搭建一个静态Web站点2. 本地浏览测试站点是否正常3. 本地站点发布公网可访问3.1 安装cpolar内网穿透3.2 创建隧道映射公网地址3.3 获取公网URL地址 4. 公网远程访问内网web站点5. 配置固定二级子域名5.1 保留二级子域名5.2 配置二级子域名 6. 测试访问二级子域…

【Java笔试强训 30】

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 一、选择题 二、编程题 🔥最难的问…

家乡特色推荐系统~java~mysql

摘 要 在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括家乡特色推荐的网络应用,在外国家乡特色推荐系统已经是很普遍的方式,不过国内的管理网站可能还处于起步阶段。家乡特色推荐系统采用java技术&…