虚拟DOM(一)

栏目: jQuery · 发布时间: 7年前

虚拟DOM(一)

用jQuery实现

虚拟DOM(一) 虚拟DOM(一) 虚拟DOM(一)

遇到的问题

  • DOM 操作是“昂贵”的,js 运行效率高
  • 尽量减少 DOM 操作,而不是“推倒重来”
  • 项目越复杂,影响就越严重
  • vdom 即可解决这个问题

虚拟DOM(一)

三、vdom 的如何应用,核心 API 是什么

什么是 vdom

虚拟DOM(一)

介绍 snabbdom

虚拟DOM(一)

虚拟DOM(一)

介绍 snabbdom - h 函数

虚拟DOM(一)

介绍 snabbdom - patch 函数

虚拟DOM(一)

重做jQuery的demo

  • 使用 data 生成 vnode
  • 第一次渲染,将 vnode 渲染到 #container
  • 并将 vnode 缓存下来
  • 修改 data 之后,用新 data 生成 newVnode
  • vnodenewVnode 对比

虚拟DOM(一)

核心 API

h(‘<标签名>’, {…属性…}, […子元素…])
h(‘<标签名>’, {…属性…}, ‘….’)
patch(container, vnode)
patch(vnode, newVnode)

四、介绍一下 diff 算法

4.1 vdom 为何使用 diff 算法

  • DOM 操作是“昂贵”的,因此尽量减少 DOM 操作
  • 找出本次 DOM 必须更新的节点来更新,其他的不更新
  • 这个“找出”的过程,就需要 diff 算法

虚拟DOM(一)

patch(container, vnode)

虚拟DOM(一)

虚拟DOM(一)

演示过程

虚拟DOM(一)

虚拟DOM(一)

虚拟DOM(一)

虚拟DOM(一)


以上所述就是小编给大家介绍的《虚拟DOM(一)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Python 3学习笔记(上卷)

Python 3学习笔记(上卷)

雨痕 / 电子工业出版社 / 2018-1 / 89

经过9 年的发展,Python 3 生态已相当成熟。无论是语言进化、解释器性能提升,还是第三方支持,都是如此。随着Python 2.7 EOF 日趋临近,迁移到Python 3 的各种障碍也被逐一剔除。是时候在新环境下学习或工作了。 人们常说Python 简单易学,但这是以封装和隐藏复杂体系为代价的。仅阅读语言规范很难深入,亦无从发挥其应有能力,易学难精才是常态。《Python 3学习笔记(......一起来看看 《Python 3学习笔记(上卷)》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码