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

如何在百度建立自己的网站怎么弄网站关键词

如何在百度建立自己的网站,怎么弄网站关键词,网站制作哪家便宜,哪个网站做外贸的多第11章 性能优化 Reactde Dom diff算法使我们能够在任意时间点高效地重新绘制整个用户界面#xff0c;并保证最小程度的DOM改变#xff0c;然而#xff0c;也存在需要对组件进行细致优化的情况#xff0c;这时就需要渲染一个新的DOM来让应用运行得更加高效。 shouldCompone… 第11章 性能优化 Reactde Dom diff算法使我们能够在任意时间点高效地重新绘制整个用户界面并保证最小程度的DOM改变然而也存在需要对组件进行细致优化的情况这时就需要渲染一个新的DOM来让应用运行得更加高效。 shouldComponentUpdate 当一个组件更新时无论是设置了新的props还是调用了setState方法或者forceUpdate方法React都会调用该组件所有的子组件的render方法。在大多数时候这样的操作都没有问题但是在组件树深度嵌套或是render方法十分复杂的页面上这可能会带来些许延迟。 有时候组件的render方法会在不必要的情况下被调用。比如组件渲染的过程中并没有使用props或者state的值或者组件的props或者state并没有在父组件重新渲染时发生改变。这意味着重新渲染这个组件会得到和已知虚拟DOM一模一样的结果这样的计算过程是没有必要的。 React提供了一个组件的生命周期方法shouldComponentUpdate我们可以使用它来帮助React正确判断是否需要调用组件的render方法。 shouldComponentUpdate方法返回一个布尔值。如果返回false就是告诉React不要调用组件的渲染方法并使用之前渲染好的虚拟DOM如果返回true则是让React调用组件的渲染方法并计算出新的虚拟DOM。在默认情况下shouldComponentUpadte方法永远都会返回true因此组件总是会调用render方法。 组件首次被渲染时shouldComponentUpdate方法并不会被调用shouldComponentUpdate方法接受两个参数即新的props和新的state以帮助你决定是否应该重新渲染。 不可变性辅助插件 在需要比较对象以确定是否更新时使用不可变得数据结构让你的shouldComponentUpdate方法变得更加简单。我们可以使用React.addons.update来确保SurverEditor /组件得不可变性。 React.addons.update接受一个数据结构和一个配置对象。你可以在配置对象中传入$slice、$push、$unshift、$set和$apply。 深入调查拖慢你应用的部分 正如我们在前几小节中提到的那样给组件添加一个自定义的shouldComponentUpdate方法能够在很大程度上优化程序。 React.addons.Perf插件能够帮助我们找到添加shouldComponentUpdate方法的最佳位置。 键Key 多数时候你会看到列表中使用key属性的情况它的作用是给React提供一种除组件类之外的识别一个组件的方法。举个例子假设有一个div组件它的key属性是foo后续又将它改成了bar那么React就会跳过DOM diff同时完全放弃div所有的子元素并重新从头开始渲染。 在渲染大型子树以避免diff计算时这样的设计很有用——因为这种计算就是在浪费时间。除了告诉React什么时候抛弃一个节点之外很多情况下key还可以在元素顺序改变时候使用举个例子 var itemssortBy(this.state.sortingAlgorithm,this.props,items return items.map(funciton (item){return img src{item.src}/} }); 如果顺序发生改变React会对元素进行diff操作并确定出最高效的操作是改变其中几个img元素的src属性。这样的结论其实是非常低效的同时可能会导致浏览器查询缓存甚至导致新的网络请求。 要解决这个问题我们可以给每个img元素简单的添加一些独一无二的字符串或者数字。 return img src{item.src} key{item.id}/; 这样React得出的结论就不是改变src属性而是使用insertBefore操作而这个操作是移动DOM节点最高效的方法。 除了改变顺序外这个操作同样适用于插入操作不包括向末尾元素后面插入。如果没有正确的key属性在数组开头插入一个项目会导致后续的img标签的src属性发生改变。 值得注意的一点是尽管key看似被作为一个属性传入了但其实在组件的任何位置都无法实际获取到它。 总结 将shouldComponentUpdate返回值改为true或者false以提升性能。 使用React.addons.Perf来诊断缓慢或不必要的渲染。 使用key来帮助React识别列表中所有子组件的最小变化。
http://www.pierceye.com/news/456487/

相关文章:

  • 江苏建设通网站创业项目
  • 亚马逊电商网站南通做网络网站
  • 做网站交易装备可以么上海企业信息查询公示系统
  • 浙江网站建设而梦幻西游源码论坛
  • 网站建设类织梦模板做网站 对方传销
  • 做外贸比较好的网站莱芜信息港房产网
  • 胶州建设局网站做电影网站怎样赚钱
  • 物流的网站模板免费下载网站你懂我意思正能量晚上下载
  • 做外贸的阿里巴巴网站是哪个更好网络宣传网站建设价格
  • 网站入侵怎么做网站开发相关英文单词
  • 实验室网站建设方案阳西网络问政平台官网
  • 岳阳网站开发建设网站域名注册申请
  • 营销型网站建设ppt网站程序开发后怎么上线
  • 鞍山做网站哪家好制作网站技术
  • 中国建设银行山西省分行网站wordpress永久免费
  • 设计网络网站做国外网站 国外人能看到吗
  • 融安有那几个网站做的比较好的创建网站大约
  • 浙江联科网站建设选择宁波seo优化公司
  • 上海建站网络科技app营销策略有哪些
  • 怎么检查网站有没有被挂马知乎做笔记的网站
  • 温岭网站制作爱网站查询
  • 徐州学习网站建设影视公司组织架构
  • 怎么看别人的网站有没有做301蓝色扁平化企业网站
  • 郑州建站模板网络程序员
  • 健身顾问在哪些网站做推广北京网络推广外包公司排行
  • 天津网站开发工资水平建设网站如何写文案
  • 做a漫画在线观看网站注册个免费网站
  • 杭州网站设计网页长安东莞网站推广
  • 福州网站建设软件怎样上传自己的网站
  • wordpress手机站如何做wordpress 查询文章