嘿,我正在尝试删除对象并设置新数据,但是每次我尝试它都会回调以前的状态。例如删除艾玛返回 ([ {name:"red"},{name:"reeed"} ],然后删除 reed 应该返回 ([ {name:"red"} ] 但是它返回 ([ {name: "red"},{name:"emma"}]。提前致谢
const [test1, setTest] = useState([ {name:"red"},{name:"reeed"},{name:"emma"}]);
const deleteFunction= (name) => {
setTest([...test1.filter(item => item.name !== name)]);
};
答案 0 :(得分:-1)
解决方案:
setTest((prevState) => (prevState.filter(item => item.name !== name)));