我一直在努力添加一个键到一个动态的状态在嘴站。我尝试过多种方法,比如
1.
const store = (set, get) => ({
keyAttrib: {key1: "value1", key2: 2},
update: (key, value) => {
let newState = { ...get().keyAttrib, [key]: value };
set(newState);
}
})
但他们似乎都不起作用。
发布于 2022-07-12 13:30:45
您提供的第二个示例对我来说非常好:
const useStore = create((set) => ({
keyAttrib: {key1: "value1", key2: 2},
update: (key, value) =>
set((state) => ({
keyAttrib: {
...state.keyAttrib,
[key]: value,
},
})),
}));
下面是可以添加/更新键值对的工作码箱 (请忽略任何样式),下拉列表将始终更新key3。如果这仍然没有帮助,请提供一个最低限度的唤醒代码框的例子。
需要使用event.preventDefault()来防止表单执行页面刷新,这将用它的初始值重置您的Zustand。
https://stackoverflow.com/questions/72951227
复制相似问题