React.Component没有实现shouldComponentUpdate?

时间:2018-01-15 21:25:56

标签: reactjs

根据文档,React.Component没有实现shouldComponentUpdate

那么组件的生命周期(the-component-lifecycle)(shouldcomponentupdate)怎么样?

  

React.PureComponent类似于React.Component。区别   它们之间是React.Component没有实现   shouldComponentUpdate(),但React.PureComponent用a实现它   浅支柱和状态比较。

1 个答案:

答案 0 :(得分:1)

默认情况下,使用ComponentshouldComponentUpdate返回true(不会发生道具差异),除非它由您定义(结果取决于您放入的内容)。默认情况下,使用PureComponent react会做一个浅层的道具差异。

随意查看一下反应源代码,粗略地说,它会检查shouldComponentUpdate是否已定义并且是一个函数。然后检查它是否是纯组件,然后默认返回true。

https://github.com/facebook/react/blob/master/packages/react-reconciler/src/ReactFiberClassComponent.js