第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

react + redux性能優(yōu)化之重復渲染

標簽:
JavaScript

先上图

700

文章系列主要内容如下:

  • 减少重复渲染

  • 列表懒加载

  • 动画和数据请求分离

  • 导航闪动

本次主要内容:减少重复渲染

在react +redux 架构的项目中,只要state发生改变,整个项目都会被渲染,那么如何减少重复渲染呢?

列表重复渲染

react 的生命周期提供了一个方法判断组件是否更新

//true表示更新,false表示不更新shouldComponentUpdate: function(nextProps, nextState) { 
    return true;
}

对于不需要重复渲染的组件我们可以:

shouldComponentUpdate: function(nextProps, nextState) {    return false;
}

对于需要通过对某个数值判断是否渲染的,我们可以:

shouldComponentUpdate: function(nextProps, nextState) {    return this.props.value !== nextProps.value;
}

对于需要对数组判断的情况,上面的做法可能不正确

因为在操作数组是我们是操作的同一个数组,在操作的过程中nextPropsnextState的值已经相同了,如果要让他不同,必须用redux的提供的官方操作,先拷贝数组对象再操作,或者[].concat()(concat会返回一个新数组,类似拷贝对象)。然后我们在shouldComponentUpdate中判断nextPropsnextState就行了,这是的判断结果才会是正确的。

这个时候我们又遇到了新的问题

如果组件中一部分需要渲染,一部分不需要渲染怎么办?

这个时候就改考虑组件拆分的问题了,其实组件拆分不仅能提高代码的可读性,也可以对组件优化起一臂之力。



作者:azothaw
链接:https://www.jianshu.com/p/b9b311f04707


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消