当前位置: 首页 > 知识库问答 >
问题:

React.Component vs React.PureComponent

竺鸿骞
2023-03-14

官方的React文档声明“React.purecomponentshouldcomponentupdate()只对对象进行了较浅的比较”,如果状态是“deep”,则建议不要这样做。

考虑到这一点,在创建React组件时,有什么理由更喜欢React.purecomponent吗?

问题:

  • 使用react.component是否会对性能产生影响,我们可以考虑使用react.purecomponent
  • 我猜shouldcomponentupdate()的purecomponent只执行粗浅的比较。如果是这样,难道不能用上述方法进行更深入的比较吗?
  • “此外,react.purecomponentshouldcomponentupdate()跳过整个组件子树的prop更新”-这是否意味着忽略prop更改?

在阅读这个媒体博客时出现了一个问题,如果它有帮助的话。

共有1个答案

龚志文
2023-03-14

react.purecomponentreact.component之间的主要区别是purecomponent对状态变化进行了粗浅的比较。这意味着当比较标量值时,它比较它们的值,但当比较对象时,它只比较引用。它有助于提高应用程序的性能。

当您能够满足以下任何条件时,您应该选择react.purecomponent

  • 状态/道具应为不可变对象
  • 状态/道具不应具有层次结构
  • 数据更改时应调用forceUpdate

如果您正在使用react.purecomponent,您应该确保所有子组件也是纯的。

使用react.component对性能有什么影响吗,我们可以考虑使用react.purecomponent?

是的,它会增加你的应用程序性能(因为比较肤浅)

是的,如果在浅层比较中找不到不同,道具的变化将被忽略。

 类似资料:

相关问答

相关文章

相关阅读