gpt4 book ai didi

javascript - 更新对象属性中的数组

转载 作者:行者123 更新时间:2023-11-29 10:59:09 25 4
gpt4 key购买 nike

我有一个这样定义的对象:

import React, { Component } from 'react';
import './App.css';

class App extends Component {

constructor() {
super();
this.state = {
lists: ["Dogs", "Cats"],
items: {Dogs:[], Cats:[]}
};
}

handleAddItem(item) {
console.log(this.props.idName);
console.log(item);
}

我有变量

console.log(this.props.idName)// output: Dogs
console.log(item);// output {name: "lofi"}

我不知道如何更新对象项{}以使其变成这样:

items{Dogs:[{name: "lofi"}], Cats:[]}

最佳答案

要更新嵌套的 Array 子状态,可以使用扩展运算符追加元素

handleAddItem = item => {
this.setState((prevState, props) => ({
items: {
...prevState.items,
[props.idName]: [
...prevState.items[props.idName],
item
]
}
}))
}

关于javascript - 更新对象属性中的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50677537/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com