我创建了一个简单的 React 应用程序并使用 why-did-you-update 库检查了应用程序是否重新渲染,它显示了不必要的重新渲染以及如何防止这些重新渲染?
最佳答案
如果组件的 props 改变,或者如果它们的父组件被重新渲染,组件将被重新渲染。您可能已经更新了父组件的 Prop 或状态。 React 提供了一个名为 shouldComponentUpdate 的生命周期函数来处理不必要的渲染。如果你为你的 Prop 使用不可变数据,那么实现起来会更快更容易,因为你可以简单地在新 Prop 和旧 Prop 之间进行相等性检查,看看是否有任何变化。参见 https://facebook.github.io/react/docs/component-specs.html#updating-shouldcomponentupdate和 https://facebook.github.io/react/docs/pure-render-mixin.html
关于reactjs - 如果 props 相等,为什么组件会重新渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39752933/