多个获取请求

问题描述 投票:0回答:1

我是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)
        });
reactjs api ecmascript-6 get fetch
1个回答
1
投票

您可以将此用于第二个请求:

const newState = {
  items: [...this.state.items, ...newItems]
}

this.setState(newState);
© www.soinside.com 2019 - 2024. All rights reserved.