Javascript 从useReducer钩子返回的状态是“深度副本”还是还原器输出的引用?

Javascript 从useReducer钩子返回的状态是“深度副本”还是还原器输出的引用?,javascript,reactjs,redux,react-hooks,Javascript,Reactjs,Redux,React Hooks,我目前正在React中使用上下文API和useReducer钩子实现全局状态处理 关于可变性,我有两个顾虑: 当更新我的减速器中的状态时,我是否需要使用Lodash的cloneDeep函数来切断进入我的减速器的对象与存储状态之间的引用? 是否有可能通过在还原程序外部手动突变来破坏全局状态,或者在手动突变将在下一个更新周期中被覆盖的意义上,它的行为是否会像正常反应状态一样? 作为参考:我想读一下 这是一个非常好的指南,说明了如何以正确的方式将react上下文与useReducer结合使用 如果有帮

我目前正在React中使用上下文API和useReducer钩子实现全局状态处理

关于可变性,我有两个顾虑:

当更新我的减速器中的状态时,我是否需要使用Lodash的cloneDeep函数来切断进入我的减速器的对象与存储状态之间的引用? 是否有可能通过在还原程序外部手动突变来破坏全局状态,或者在手动突变将在下一个更新周期中被覆盖的意义上,它的行为是否会像正常反应状态一样?
作为参考:

我想读一下

这是一个非常好的指南,说明了如何以正确的方式将react上下文与useReducer结合使用

如果有帮助,请告诉我。

useState和useReducer通过调用someSetternewValue或从reducer函数返回值,为您提供保存的确切值引用


无论哪种情况,手动改变值都是错误的。特别是,如果您返回与上次相同的引用,它们都将退出更新,因此您应该始终不变地更新值。

仅链接回答。。。没有大纲链接,答案实际上毫无意义。