当前位置: 首页 > news >正文

网站建设三网合一指的是什么嵌入式软件培训

网站建设三网合一指的是什么,嵌入式软件培训,西宁企业网站营销推广,微信代运营公司有哪些虚拟DOM与diff算法 snabbdom虚拟DOMdiff算法 snabbdom 是什么:snabbdom是著名的虚拟DOM库,是diff算法的鼻祖,Vue源码借鉴了snabbdom 虚拟DOM 是什么:本质上是存在内存里的 JavaScript 对象 作用:用来描述真实DOM的层…

虚拟DOM与diff算法

      • snabbdom
      • 虚拟DOM
      • diff算法

snabbdom

  • 是什么:snabbdom是著名的虚拟DOM库,是diff算法的鼻祖,Vue源码借鉴了snabbdom

虚拟DOM

  • 是什么:本质上是存在内存里的 JavaScript 对象

  • 作用:用来描述真实DOM的层次结构,真实DOM上的一切属性都能在虚拟DOM上找到对应的属性,并且diff算法也是作用在虚拟DOM上的

  • 怎么用(如何产生):用h函数可以生成虚拟DOM

    // 调用h函数
    h('p', {}, 'aaa');
    // 得到以下的虚拟DOM
    { "sel": "p", "data": {}, "text": "aaa" }
    // 真实DOM如下
    <p>aaa</p>
    
    • h函数代码如下

      import vnode from "./vnode";// 低配版h函数,必须接受三个参数(生成vnode)
      // 形态如下:
      /* ① h('div', {}, '文字')② h('div', {}, [])③ h('div', {}, h('div', {}, '文字'))
      */
      export default function (sel, data, c) {if (arguments.length !== 3) throw new Error("对不起,传入的参数必须为3个");if (typeof c === "string" || typeof c === "number") {// 符合第①种形态return vnode(sel, data, undefined, c, undefined)} else if (Array.isArray(c)) {// 符合第②种形态let children = [];for (let index = 0; index < c.length; index++) {const element = c[index];// 如果不是h()if (!(typeof element === "object" && element.hasOwnProperty("sel"))) {throw new Error("对不起,传入的参数有误");}children.push(element);}return vnode(sel, data, children, undefined, undefined);} else if (typeof c === "object" && c.hasOwnProperty("sel")) {// 符合第③种形态let children = [c]return vnode(sel, data, children, undefined, undefined);} else {throw new Error("对不起,传入的参数有误");}// return vnode(sel, data, children, undefined, undefined);
      }
      

diff算法

  • 是什么:一种作用于虚拟DOM上的算法

  • 作用:通过在虚拟DOM上进行精细化比较,从而达到最小量更新真实DOM的效果

  • diff算法是怎么做的

    • diff算法只在同一层进行比较,不同层的话会直接暴力删除旧的,插入新的

    • diff算法对同一个虚拟节点进行精细化比较,也就是选择器和key相同的虚拟节点。

    • diff算法的比较如下图

      在这里插入图片描述

http://www.yayakq.cn/news/812266/

相关文章:

  • 网页界面设计调查问卷福州网站推广优化
  • 怎么自己做网站服务器linux建设网站需要什么
  • 有什么做的好的ppt排版网站电脑手机一体网站
  • 韩国免费行情网站的推荐理由wordpress是什么语言开发的
  • 制作企业网站的新闻显示深圳网站开发企业
  • 女生做网站编辑好不好H5网站模板修改教程
  • 如何做网站销售凡科网网站建设
  • 常州网站建设工作室wordpress主题2019
  • 百度怎样收录网站宁波seo在线优化公司
  • 上海浦东医院网站建设常州做的网站的公司哪家好
  • 优化网站的软件网站建设论文提纲
  • 顶尖的设计网站贵阳网页设计培训学校
  • 制作网站软件作品o2o网站建设技术
  • 网站营销单页怎么设计方案企业推广费用占比多少合适
  • 网站建设北京个人网站切图是什么意思
  • 孝感网站设计摄影工作室网站源码
  • 贵州西能电力建设有限公司网站厦门网站开发公司哪家好
  • 企业网站的用户需求分析49you网页游戏平台
  • 怎么建设网站怎么样网站做子站点有什么用
  • 杭州网站的优化wordpress 最大上传
  • 建设生鲜网站价格wordpress 更改首页
  • 做网站电商云数据库有用吗株洲有名的网站
  • 网站空间和数据库的关系手机网页无法访问如何解决
  • 网站建设 镇江丹阳企业seo网站推广公司
  • 沈阳大型网站设计公司江苏省建设厅官方网站
  • 大庆商城网站建设创建网站需要备案吗
  • 重庆网络网站推广抖音代运营怎么取消
  • 电子商务网站栏目网站开发的路径是什么
  • 赣州网站设计有哪些网站开发项目预算表
  • 购物网站建设开发费用分析小馋网站建设书