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

jsp个人网站设计北京网站建设哪家专业

jsp个人网站设计,北京网站建设哪家专业,天津关键词优化平台,软件开发培训机构找极客时间1、什么是虚拟DOM 虚拟DOM 是javascript的一个对象#xff0c;是内存中的一种数据结构#xff0c;以树的形式存储UI的状态#xff0c;树中的每个节点都代表着真实的DOM#xff0c;用来描述我们希望在页面看到的 HTML结构#xff1b; 现在的MVVM 框架#xff0c;大多使用…1、什么是虚拟DOM 虚拟DOM 是javascript的一个对象是内存中的一种数据结构以树的形式存储UI的状态树中的每个节点都代表着真实的DOM用来描述我们希望在页面看到的 HTML结构 现在的MVVM 框架大多使用虚拟DOM进行数据视图的更新相比较真实DOM的操作 操作真实DOM时 DOM属性繁多处理增删改成比较繁琐处理效率低会出现重绘回流现象导致页面更新缓缓卡顿 原生的DOM也是 js的一个对象只不过是浏览器提供的对象 比如在JSX 中写法 const dom h1/h1 // 对应虚拟DOM const dom {type: h1} const dom document.createElement(h1) ------- const dom div classNamenameAndy/div // 对应的虚拟DOM为 dom {type: div, props:{ className: name, children:Andy}}2、虚拟DOM的用途作用 虚拟DOM主要是为了提升操作更新界面的效率目前前端流行的前端框架React Vue都是使用虚拟DOM进行更新但是在一些对于性能要求极高画面绘制精细的应用中虚拟DOM依然无法满足需求需要使用更加低级的渲染技术如WebGL 或者直接操作DOM 主要流程 创建虚拟DOM树将UI组件转化为虚拟DOM树来表示UI结构 A、Diffing算法 每次更新属性状态时候会新创建一个虚拟DOM树并与之前的虚拟DOM树进行对比找出差异 B、最小范围更新 通过 Diffing 算法React 确定需要更新的 DOM 节点并只对发生变化的部分进行更新 C、渲染更新 React 根据 Diffing 结果对真实 DOM 进行最小化的更新操作。 3、React 通过Diff 算法如何进行 current process 与 workInProcess 对比的以及16.8前后版本性能的对比 虚拟DOM的 Diffing 算法是 React 的优化性能核心通过启发式算法来对比两颗虚拟的 DOM树最大限度减少对比的计算量 同层节点对比 React 只会比较同层的节点不会跨层对比不同层次的节点。也就是说如果元素的位置发生了变化React 会先删除原来的节点再插入新的节点。 唯一 key 标识 在处理动态列表时React 通过 key 属性来区分不同的节点。如果列表中的每个元素都有一个唯一的 keyReact 就能高效地找到变化的元素并只更新该部分。 在React 15之前使用的是递归创建虚拟DOM递归不能中断如果层级很深多导致递归线程占用时间长阻塞主线程而导致出现卡顿现象 在 React 16之后为了处理这种不能中断的方式将更新方案修改为异步的可中断方案推出Fiber架构将任务切片分隔异步渲染根据不同的需求分配不同的优先级进行渲染支持分批次批量更新 vue2中使用的是双端对比即分别一个从头开始一个从末尾开始向中间对比靠拢在递归的同时会对DOM进行操作 而React认为实际应用中对于列表翻转大量重绘重排场景比较少而是采用双缓存的技术在React的进程中最多会同时存在两个Fiber树当前屏幕看到渲染出来的视图树称为 current fiber树正在缓存中进行状态属性处理的 树称为 workInProcess fiber树当 workInProcess fiber 树渲染完成后应用根节点的 current 指针会指向 workInProcess fiber 树从而将 workInProcess fiber树更改为 current fiber 树完成一次视图更新渲染 React 的更新会经历两个阶段render 阶段 和 commit 阶段。render 阶段是可中断的commit 阶段是不可中断的。 render 阶段会生成 fiber 树所谓的 diff 就会发生在这个阶段。React 通过深度优先遍历来生成 fiber 树整个过程与递归是类似的因此生成 fiber 树的过程又可以分为「递」阶段和「归」阶段。 commit 阶段主要执行各种 DOM 操作、生命周期钩子、某些 hook 等。 因此diff 阶段不会直接变更 DOM而是留到 commit 阶段再做变更 4、虚拟DOM 对比时候的 注意事项key 如果列表只是简单的展示没有增删改查操作可以使用index作为key值相反则key值需要是唯一的否则会使新旧DOM对比时候消耗更多的性能 如图key 唯一时候key 使用index 时候图像对比 使用index 作为key 时候如下图 使用 唯一标识 作为key 时候
http://www.hkea.cn/news/14330653/

相关文章:

  • 上海市建设厅网站南昌seo代理商
  • 大连网站制作优选ls15227做代刷主站网站
  • swoole做网站深圳做装修网站费用多少钱
  • 网站建设推广服务合同范本合肥百度搜索排名优化
  • 网上申报系统新乡百度网站优化排名
  • 福建省住房与城乡建设厅网站宁波网络推广平台设计
  • 网站的统计代码是什么意思定制设计网
  • 航运网站建设计划书手机端模板网站
  • 做网站是如何赚钱的网站服务器租一个月
  • 临沂网站建设做网站芜湖商城网站建设
  • 淄博做网站做网站需要掌握的软件
  • 商用自适应网站建设wordpress开启用户激活验证
  • 重庆荣昌网站建设报价新闻cms静态网站模板
  • 网站seo网络优化公司经典广告语
  • 网站如何才能被百度收录如何把网站能搜到
  • 企业网站界面风格设计描述中国500强排行榜
  • jsp网站开发实例.百度网盘手机应用下载网站源码
  • 镇江网站建设zjmfkj网络工程师35岁以后出路
  • 360推广登录上海专业seo服务公司
  • 建设精品课程网站的意义wordpress 报表插件
  • 威宁建设局网站做网站主要学什么条件
  • 无锡网站建设818gx微信兼职平台网站开发
  • 知乎 网站开发工具佛山网站建设专家评价
  • 网站默认地区数据修改新冠止咳药物有哪几种
  • 建设工程材料登记备案申请网站怎样做才能让网站有排名
  • 网站建设一二级目录做个人网站需要多少钱
  • 做二手房怎找房源网站广州网站开发企业
  • 品牌网站建设推荐大蝌蚪广东省建设监理协会官方网站
  • 找网站建设企业国际网络销售平台有哪些
  • 山东兴华建设集团网站网站建设中成本怎么描述