gpt4 book ai didi

javascript - react redux 工具包。如果我得到相同的值,如何停止渲染?

转载 作者:行者123 更新时间:2023-12-04 08:04:54 26 4
gpt4 key购买 nike

如果我得到相同的值,如何停止渲染?我应该为此写一些条件吗?喜欢

  if (JSON.stringify(state) === JSON.stringify(payload) {
return state
}
return payload
这是一个完整的例子
https://codesandbox.io/s/return-redux-toolkit-ersqo?file=/src/redux/slices/slice.js
这是代码的一部分
const someSlice = createSlice({
name: "someSlice",
initialState: {},
reducers: {
actionSuccess: (state, { payload }) => payload
}
});

最佳答案

您可以使用 useSelector 的第二个参数这是一个 equalityFn .
您可以导入 shallowEqual来自 react-redux并将其作为第二个参数传递给 useSelector .同样,这只会进行浅层比较。您可以使用自己的自定义函数或任何库函数进行深度比较并将其作为第二个参数传递给 useSelector .
我已经 fork 了你的代码和盒子来展示 shallowEqual少量 :-
https://codesandbox.io/s/return-redux-toolkit-forked-wtewy

关于javascript - react redux 工具包。如果我得到相同的值,如何停止渲染?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66265337/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com