React 重新渲染和 Redux 问题

问题描述 投票:0回答:1

当我们使用 useSelector 挂钩时,每当我更改状态时,我使用 useSelector 挂钩的所有组件都会重新渲染

如何避免这种情况以及是否有其他方法可以防止组件重新渲染

javascript reactjs redux
1个回答
0
投票

useSelector 采用第二个参数,该函数检查先前状态和当前状态是否相等以确定何时更新。

import { shallowEqual, useSelector } from 'react-redux'

// Pass it as the second argument directly
const selectedData = useSelector(selectorReturningObject, shallowEqual)

// or pass it as the `equalityFn` field in the options argument
const selectedData = useSelector(selectorReturningObject, {
  equalityFn: shallowEqual,
})
© www.soinside.com 2019 - 2024. All rights reserved.