Reactjs 可以在react中动态添加useState钩子吗?
我正在做一个项目,在这个项目中,用户可以创建“东西”,然后我将状态与之关联 关于我是如何做到这一点的一个简单版本基本上是:Reactjs 可以在react中动态添加useState钩子吗?,reactjs,react-hooks,Reactjs,React Hooks,我正在做一个项目,在这个项目中,用户可以创建“东西”,然后我将状态与之关联 关于我是如何做到这一点的一个简单版本基本上是: function App() { const [things, setThings] = useState({}) } 不幸的是,最终的结果是一个相当大的嵌套(至少有几层深)对象 大概是这样的: { things: [ { field1: 'value1', field2: {...} ...
function App() {
const [things, setThings] = useState({})
}
不幸的是,最终的结果是一个相当大的嵌套(至少有几层深)对象
大概是这样的:
{
things: [
{
field1: 'value1',
field2: {...}
...
},
...
],
otherThings: ...
}
我知道在一个钩子中存储这么多东西并不理想,特别是因为它的不同部分基本上会不断更新
所以我的问题基本上是:
是否有某种方式可以动态添加不同的useState挂钩,以便我的状态管理看起来更像:
const [thing1, setThing1] = useState({...})
const [thing2, setThing1] = useState({...})
const [otherthing1, setOtherthing1] = useState({...})
根据用户操作添加或删除不同的useState钩子时?钩子不能被删除。React建议使用多个状态并同时更改。如果您的状态确实很大(嵌套不会使其变大,总大小会变大),则可以使用浏览器存储,如或,以防止浏览器使用过多资源和崩溃。不能使用挂钩。React建议使用多个状态并同时更改。如果您的状态确实很大(嵌套不会使其变大,总大小会变大),则可以使用浏览器存储,如或,以防止浏览器使用过多资源和崩溃