如何解决React优化:将useMemo应用于useState返回值的目标是什么?
在this article中使用上下文API进行状态管理中,作者通过以下方式将useMemo应用于useState返回值:
function CountProvider(props) {
const [count,setCount] = React.useState(0)
const value = React.useMemo(() => [count,setCount],[count])
return <CountContext.Provider value={value} {...props} />
}
我不确定要了解此优化的目标:
- 1 /是为了防止在 props 发生任何更改时重新渲染,
- 2 /还是 setCount 本身可以虚假地更改?
如果为1,则等于下面的代码吗? (因为:我们希望将 children 之外的其他道具传递给上下文提供者?并且如果 children 进行更改,则需要重新渲染)
function CountProvider({children}) {
const [count,setCount] = React.useState(0)
return (
<CountContext.Provider value={[count,setCount]}>
{children}
</CountContext.Provider>
);
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。