鍍金池/ 問答/HTML/ setState以后子組件如果屬性沒有變化也會(huì)更新重新渲染嘛?

setState以后子組件如果屬性沒有變化也會(huì)更新重新渲染嘛?

setState以后是不是一定重新渲染 無論子組件是否數(shù)據(jù)發(fā)生變化,如果是的話,那diff算法有什么用呢?

回答
編輯回答
茍活

setState會(huì)觸發(fā)子組件的重新計(jì)算vdom,但是不一定會(huì)重新更新dom

2018年5月29日 19:28
編輯回答
敢試

正常情況下是會(huì)的。
如果使用了PureComponent或者在shouldComponenetUpdate中進(jìn)行了處理則不會(huì)

2017年9月21日 17:12
編輯回答
吃藕丑

渲染的是vdom,對(duì)數(shù)據(jù)變化前后生成的vdom使用diff算法進(jìn)行比較,找到最小化操作dom的操作

2018年6月7日 04:54