Javascript 反应PureComponent可以比组件慢吗?怎么用?

Javascript 反应PureComponent可以比组件慢吗?怎么用?,javascript,reactjs,react-native,redux,Javascript,Reactjs,React Native,Redux,我指的是丹·阿布拉莫夫(Dan Abramov)的一篇文章: PSA:React.PureComponent如果你在任何地方都使用它,它会使你的应用程序速度变慢 有人能详细说明一下吗?谢谢。PureComponent实现了一个shouldComponentUpdate,对组件状态和道具进行了简单的比较。它将currentProps与nextrops进行比较(类似于state),并且仅当有更改时,才会调用render方法。这种比较的额外开销肯定会降低应用程序的速度,尤其是当您的组件和状态很重时。

我指的是丹·阿布拉莫夫(Dan Abramov)的一篇文章:

PSA:React.PureComponent如果你在任何地方都使用它,它会使你的应用程序速度变慢


有人能详细说明一下吗?谢谢。

PureComponent实现了一个shouldComponentUpdate,对组件状态和道具进行了简单的比较。它将currentProps与nextrops进行比较(类似于state),并且仅当有更改时,才会调用render方法。这种比较的额外开销肯定会降低应用程序的速度,尤其是当您的组件和状态很重时。

PureComponent实现了一个shouldComponentUpdate,对组件状态和道具进行了肤浅的比较。它将currentProps与nextrops进行比较(类似于state),并且仅当有更改时,才会调用render方法。这种比较的额外开销肯定会减慢应用程序的运行速度,尤其是当您的组件和状态很重时。

他进一步说:“想想看。如果组件的道具很不相等,通常会重新渲染,但它也必须运行检查”,他进一步说“想想看。如果组件的道具通常是浅不相等的,它会重新渲染,但它也必须运行检查“我认为,您的解释中缺少的是丹·阿布拉莫夫所说的关键点:组件必须重新渲染的概率可能高于不必重新渲染的概率。因此,如果结果已知,最好避免不必要的计算。最后,如果实现组件的人知道道具可能会改变的频率,那么她可以提高性能。我认为你的解释中缺少的是Dan Abramov所说的关键点:组件必须重新渲染的概率可能高于不必重新渲染的概率。因此,如果结果已知,最好避免不必要的计算。最后,如果实现该组件的人员知道道具可能更改的频率,则可以提高性能。