想要遍历 ID 数组以从 API获取数据

在这个应用程序中,我从一个 API 获取 ID 并将它们传递到第二个 API,并尝试为第二个 API 中的每个 ID 显示属性 overviewList.overview.lifeTimeData.energy,但在这个例子中,我只能做是显示第一个索引的属性。如何遍历 ID 数组并显示每个 ID 的属性?这是我目前所拥有的实时工作版本,代码位于组件 > HelloWorld.vue 下。我知道我需要遍历 ID 数组,但我不知道该怎么做。

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


catspeake
浏览 99回答 1
1回答

ibeautiful

你想做什么不是很清楚。但是当你这样做的时候      axios.get(        this.host +          this.domain +          `/site/` + ids[0] + `/overview?` +          this.apiKey,        this.config      )您需要为每个 id 权利运行此查询。您的方法应该更像这样: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);    });  },}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript