我是React和apis的新手。我正在尝试进行2次获取请求并将2个键及其新值分配给“items”数组。这里来自第二个get请求的“img”键保持覆盖整个对象。因此,它使第一个get请求好像它不存在一样。我需要添加第二个键,其中第一个键值来自第一次获取。希望这是有道理的。
fetch(url,{
method: 'GET'
})
.then((response)=> response.json())
.then((responseJson) => {
const newItems = responseJson.items.map(i => {
return{
name: i.name
};
})
const newState = Object.assign({}, this.state, {
items: newItems
});
console.log(newState);
this.setState(newState);
})
.catch((error) => {
console.log(error)
});
fetch(url2,{
method: 'GET'
})
.then((response)=> response.json())
.then((responseJson) => {
const newItems = responseJson.ebay.map(i => {
return{
img: i.picture.url[0]
};
})
const newState = Object.assign(this.state, {
items: newItems
});
console.log(newState);
this.setState(newState);
})
.catch((error) => {
console.log(error)
});
您可以将此用于第二个请求:
const newState = {
items: [...this.state.items, ...newItems]
}
this.setState(newState);