首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >希望循环通过ID数组从API中获取数据。

希望循环通过ID数组从API中获取数据。
EN

Stack Overflow用户
提问于 2020-08-06 13:46:46
回答 1查看 456关注 0票数 0

在这个应用程序中,我从一个API中获取ID,并将它们传递到第二个API中,并试图为第二个API中的每个ID显示属性overviewList.overview.lifeTimeData.energy,但在本例中,我所能做的就是显示第一个索引的属性。如何循环遍历ID数组并显示每个ID的属性?下面是我到目前为止使用的一个实时版本,代码在components > HelloWorld.vue下面。我知道我需要遍历ID数组,但我不知道如何循环。

https://codesandbox.io/live/68gQlN

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-06 14:33:06

你想做什么还不太清楚。

但当你做的时候

代码语言:javascript
复制
      axios.get(
        this.host +
          this.domain +
          `/site/` + ids[0] + `/overview?` +
          this.apiKey,
        this.config
      )

您需要对每个id权限运行此查询。您的方法应该更像这样:

代码语言:javascript
复制
methods: {
  async getSiteDetails() {
    let ids = [];
    await axios.get(
      this.host +
        this.domain +
          "/sites/list?sortProperty=name&sortOrder=ASC&" +
        this.apiKey,
      this.config
    )
    .then((...responses) => {
      this.siteList = responses[0].data;
      ids = this.siteIdList.concat(responses[0].data.sites.site).map(x => x.id);
    })
    
    ids.forEach(this.getOverviewList);
  },
  async getOverviewList(id) {
    axios.get(
      this.host +
        this.domain +
        `/site/` + id + `/overview?` +
        this.apiKey,
      this.config
    )
    .then(((...responses) => {
        this.overviewList[id] = responses[0].data;
    }))
    .catch(errors => {
      console.log(errors);
    });
  },
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63284991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档