更新数组中对象的值

时间:2020-10-08 18:25:05

标签: javascript reactjs

假设我在React中有useState的数组。在这个数组中,我有对象

const [myArray, setMyArray] = useState([
  { id: 1, name: "Butter", pieces: 4},
  { id: 2, name: "Bread", pieces: 2}
])

const [myArray2, setMyArray2] = useState([
  { id: 1, name: "Butter", pieces: 4},
  { id: 2, name: "Bread", pieces: 2}
])

在用户界面上,我可以将这些项从myArray从一个容器移动到下一个容器中,其中myArray2的项位于其中

当我将2块黄油从myArray移到myArray2项所在的容器中时,它应过滤myAarray2中的黄油,如果找到了黄油,则应该用myUpdate更新myArray2中已建立的黄油的块。我移动了2个,所以最后数组应该像这样

const [myArray, setMyArray] = useState([
  { id: 1, name: "Butter", pieces: 2},
  { id: 2, name: "Bread", pieces: 2}
])

const [myArray2, setMyArray2] = useState([
  { id: 1, name: "Butter", pieces: 6},
  { id: 2, name: "Bread", pieces: 2}
])

我只是不知道如何使过滤器函数在myArray2中找到黄油,并用4 + 2更新它,以便有6个碎片

我知道应该是这样的

 const itemthathastobeupdated = myArray2.filter((item) => item.name == props.name);

如果有人可以在这里帮助我,那将是很棒的

0 个答案:

没有答案