<分区>
我正在为在 React 中设置我的一个对象的状态而苦苦挣扎。我拥有的代码:
export class RRHN_App extends React.Component {
constructor(props) {
super(props);
this.startLoadingItems();
this.fetchData();
this.state = {
items: [],
itemStatus : [],
selectedItem: null,
prefsDialog: false,
preferences : {
color : "brown",
listSize : 800
}
}
}
toggleItem(item) {
console.log("Selected item: ", item);
if( this.state.selectedItem &&
item.id === this.state.selectedItem.id) {
this.setState({selectedItem: null});
} else {
let ItemID= item.id;
let newSeen = {ItemID : "seen"};
this.setState({selectedItem: item});
this.setState({itemStatus: newSeen});
}
console.log(this.state.itemStatus)
}
fetchData() {
request.get("http://localhost:3000/itemStatuses")
.end( (err,response) => {
this.setState({itemStatus: response.body})
})
}
startLoadingItems() {
request.get("http://localhost:3000/hn/topstories")
.end( (err,response) => {
this.setState({items : response.body})
})
}
}
当打印 itemStatus
时,我得到了这个:
{16490176: "seen", 16497964: "seen", 16514428: "read", 16542395: "read", 16566536: "read"}
执行代码时,itemStatus
如下所示:
{ItemID: "seen"}
如何将 item.id 和“seen”的键值对添加到状态?