结论

只要是类组件,并且继承自component,都可以将component替换为PureCompoennt

component与PureComponent的关系

  • (仅限类组件)前提,在react的虚拟dom中,进行高效的更新虚拟dom是最好的优化react的方案,react的虚拟dom的更新,是修改前和修改后进行比较,然后进行修改。理论来说,react在有dom发生改变时,进行新旧虚拟dom的对比。在react组件进行嵌套时,在对比的时候,我们总希望仅仅对比发生改变的组件。这样的话是最好的。但是令人遗憾的是,一般情况react会进行全部的比较。也就是说行能会大大的降低。 对此我推荐PureCompnent
  • PureComponent浅层次比较

浅比较:所谓浅比较,最直观的理解就是仅仅比较最外层。不会进入更深层的比较。对于继承自PureComponent的组件,都只会进行浅比较。
在react开发时,组件进行嵌套的情况下,类组件使用继承自PureComponent,组件更新时仅仅会对比自身的dom.也就是说PureComponnet所嵌套的类组件若没有改变,被嵌套的组件不会进行虚拟dom的对比

  • component深层次比较

深层次比较:深层次比较,最直观的理解就是比较所有的不同。对于继承自Component的组件,会进行深层次比较。
在react开发时,组件进行嵌套的情况下,类组件使用继承自Component,组件更新时会对比所有自身嵌套的组件.也就是说Componnet所嵌套的类组件无论有没有改变,只要最外部的组件进行改变,虚拟dom将会对比自身所有的dom。

官网对PureComponent的解释

465.png

123.png

Last modification:August 25th, 2021 at 04:59 pm
如果觉得我的文章对你有用,请随意赞赏