lan*_*ion 5 reactjs redux react-redux react-hooks
useReducer()使用如下钩子从 redux 状态中提取特定值是否安全:
const {item1, item2, item3} = useSelector(state => state);
Run Code Online (Sandbox Code Playgroud)
或者这会导致问题(关于重新渲染和状态),或者被认为是不好的做法?
您永远不state应该从选择器返回整个内容!
根据文档,useSelector在调度之后,只要选择器返回值发生变化,就会重新渲染。因此,每次调用都useSelector应该返回该组件所需的尽可能小的状态,这一点很重要。
在这种情况下,最好的选择是三个单独的useSelector调用,每个调用返回一个字段,或者一个useSelector调用仅提取这些字段并返回它们。但是,由于返回新的对象引用将导致重新渲染,因此您需要使用比较shallowEqual函数或记忆选择器函数来避免在一起返回这些字段时不必要的重新渲染。
| 归档时间: |
|
| 查看次数: |
1516 次 |
| 最近记录: |