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

四川省建设工程质量监理协会网站哈尔滨如何做网站推广优化

四川省建设工程质量监理协会网站,哈尔滨如何做网站推广优化,wordpress加载ajax,广西壮族自治区市场监督管理局目录 1 组件更新机制 2 虚拟DOM配合Diff算法 3 减轻state 4 shouldComponentUpdate() 4.1 基本使用 4.2 使用参数 5 纯组件 5.1 基本使用 5.2 纯组件的比较方法 shallow compere 1 组件更新机制 当父组件重新渲染时#xff0c;父组件的所有子组件也会重新…目录 1  组件更新机制 2  虚拟DOM配合Diff算法 3  减轻state 4  shouldComponentUpdate() 4.1  基本使用 4.2  使用参数 5  纯组件 5.1  基本使用 5.2  纯组件的比较方法 shallow compere 1  组件更新机制 当父组件重新渲染时父组件的所有子组件也会重新渲染但非父组件的所有子组件不会重新渲染 如果只有parent2更新了那么只会更新 child2-1与child2-2及后代别的都不更新 如果是根组件更新那么就所有组件都会更新 2  虚拟DOM配合Diff算法 当组件中只有一个DOM元素需要更新时React使用 虚拟DOM配合Diff算法 只对需要更新的部分更新 虚拟DOM本质上是一个JS对象用来描述你希望再屏幕上看到的内容 由于只是一个JS对象所以有JS环境就可以描述DOM了这个特性拜托了浏览器的束缚更好的实现React跨平台的功能渲染DOM的流程是这样的首先根据一些数据生成虚拟DOM然后根据虚拟DOM生成页面上的DOM 当数据发生改变的时候生成一个新的虚拟DOMDiff算法比较新的虚拟DOM与旧的虚拟DOM的区别然后只重新渲染有改动的真实的DOM 色表示改变的部分 3  减轻state state应只存储何组件渲染有关的数据。 像定时器的id这种也需要在多个方法中用到的数据应该放在this中 4  shouldComponentUpdate() 当父组件更新后父组件的所有后代组件都会被更新可以使用钩子函数 shouldComponentUpdate(nextProps,nextState) 来避免不必要的重新渲染 shouldComponentUpdate()可以接收nextProps与nextState两个参数我们可以通过这两个参数对是否需要渲染进行判断如果我们定义返回值为true表示需要重新渲染组件false表示不需要重新渲染 shouldComponentUpdate()是在更新的时候触发不会说这里给了false所以开始的时候渲染不出来 4.1  基本使用 我们做个计数器的例子子组件负责显示文本 点击按钮后可以正常计数 现在我们在子组件中加入 shouldComponentUpdate()并让其返回值为false 这个时候点按钮就没用了因为返回值写死为false所以就不会再更新了 4.2  使用参数 nextProps是最新的propsnextState是最新的state我们简单用一下 点击按钮之后可以获取到最新的props与state 可以通过this.state与this.props获取更新前的状态 我们通过更新前与更新后的状态就可以判断此组件是否需要更新了 5  纯组件 5.1  基本使用 纯组件(React.PureComponent)与React.Component功能类似 之前我们创建组件的时候都是继承的React.Componnent 纯组件内部自动通过shallow compere(浅层对比)比较 更新前后的props与state 如果有变化就渲染如果没用变化就不渲染 我们简单做个例子先看React.Component目前点击按钮后count不再1而是保持原状 点击按钮后会执行render() 之后再看纯组件 由于count没有发生改变所以只执行了一开始渲染页面的render()后面点击按钮不再执行render() 5.2  纯组件的比较方法 shallow compere 值(整形字符串这种)的话就是直接比对于引用类型(数组对象)只比较引用地址是否相同 在纯组件中使用浅拷贝会出问题 先回忆一下JS的浅拷贝 纯组件中的原理与上面一样纯组件判定这一次对象与上一次对象相同就不会再渲染了 如果要修改类型为对象的状态建议使用深拷贝(三个点的方式) 无论是纯组件还是普通组件都建议新搞一个数据
http://www.dnsts.com.cn/news/72060.html

相关文章:

  • 商城网站建设源码天堂网
  • 网站编程学习江西个人网站备案做论坛
  • 经过学习网站开发后的心得体会idea 网站开发
  • 网站外网怎么做京东联盟建网站
  • 荥阳高端网站建设wordpress怎么开启注册
  • 超市网站规划开广告店需要什么技术
  • 张掖网站制作深圳网站建设 合作品牌
  • 网站备案密码修改重庆建设工程信息网官网安全监督信息网
  • 没有网站可以备案吗网站规划与设计
  • 建站公司专业地址wordpress相册管理
  • 团队网站建设wordpress 调用用户头像
  • 建设一个网站系统要多久做的网站是怎么被收录
  • 我要开网店网站建设优化服务方案模板
  • 县总工会网站建设情况重庆沙坪坝学校
  • 网站备案系统登录网站权限怎么设置方法
  • 西安个人做网站怎么查公司网站可信度
  • 汉口网站制作如何做彗聪网站呢
  • 网站的外链怎么做wordpress 4.8漏洞
  • 网站下面版权代码同城信息发布平台
  • 网站怎么做英语和中文的公司内部网站
  • 描述自己做的网站如何做公司网站运营
  • 搜索关键词技巧宁波seo网络推广选哪家
  • 网站建设运营合作合同网站建设公司 lnmp
  • 深圳网站专业建设公司网站建设点击打开指定网页
  • cloudflare做侵权网站大企业网站建设哪里好
  • 网站开发个人简历word下载亚马逊做超链接的网站
  • 昆明有哪些帮忙做网站的公司温岭 网站建设
  • 河南做网站团队深圳网络营销方法
  • 网站建设开发ppt模板做搜狗pc网站优化
  • 北京注册公司查询织梦模板网站好优化吗