摘要: 03 阅读全文
posted @ 2020-04-04 19:42 Mr_Riven 阅读(217) 评论(0) 推荐(0) 编辑
摘要: Vue 3.0 的目标是让 Vue 核心变得更小、更快、更强大,因此 Vue 3.0 增加以下这些新特性: (1)监测机制的改变3.0 将带来基于代理 Proxy 的 observer 实现,提供全语言覆盖的反应性跟踪。这消除了 Vue 2 当中基于 Object.defineProperty 的实 阅读全文
posted @ 2020-04-04 10:58 Mr_Riven 阅读(600) 评论(0) 推荐(0) 编辑
摘要: (1)代码层面的优化 v-if 和 v-show 区分使用场景 computed 和 watch 区分使用场景 v-for 遍历必须为 item 添加 key,且避免同时使用 v-if 图片资源懒加载 路由懒加载 当打包构建项目时,JavaScript包会变的非常打,影响页面加载。如果我们能把不同路 阅读全文
posted @ 2020-04-04 10:46 Mr_Riven 阅读(767) 评论(0) 推荐(0) 编辑
摘要: key 是为 Vue 中 vnode 的唯一标记,通过这个 key,我们的 diff 操作可以更准确、更快速。 Vue 的 diff 过程可以概括为: oldCh 和 newCh 各有两个头尾的变量 oldStartIndex、oldEndIndex 和 newStartIndex、newEndIn 阅读全文
posted @ 2020-04-04 10:18 Mr_Riven 阅读(1221) 评论(0) 推荐(0) 编辑
摘要: 虚拟 DOM 的实现原理主要包括以下 3 部分: 用 JavaScript 对象模拟真实 DOM 树,对真实 DOM 进行抽象; diff 算法 — 比较两棵虚拟 DOM 树的差异; pach 算法 — 将两个虚拟 DOM 对象的差异应用到真正的 DOM 树。 阅读全文
posted @ 2020-04-04 10:06 Mr_Riven 阅读(1657) 评论(0) 推荐(0) 编辑
摘要: 什么是虚拟dom用js模拟一颗dom树,放在浏览器内存中.当你要变更时,虚拟dom使用diff算法进行新旧虚拟dom的比较,将变更放到变更队列中, 反应到实际的dom树,减少了dom操作. 虚拟DOM将DOM树转换成一个JS对象树,diff算法逐层比较,删除,添加操作,但是,如果有多个相同的元素,可 阅读全文
posted @ 2020-04-04 09:57 Mr_Riven 阅读(7318) 评论(0) 推荐(1) 编辑
摘要: 受现代 JavaScript 的限制 ,Vue 无法检测到对象属性的添加或删除。由于 Vue 会在初始化实例时对属性执行 getter/setter 转化,所以属性必须在 data 对象上存在才能让 Vue 将它转换为响应式的。 但是 Vue 提供了 Vue.set (object, propert 阅读全文
posted @ 2020-04-04 09:31 Mr_Riven 阅读(1275) 评论(0) 推荐(0) 编辑