亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

循環遍歷一個對象并添加到另一個對象

循環遍歷一個對象并添加到另一個對象

三國紛爭 2023-03-24 14:02:28
所以我試圖從 API 獲取一些數據,對其進行一些翻譯并返回值。這是從 hubspot 的 hubdb API 中提取數據,但是當數據返回時,您不會取回字段名稱,因此我需要通過函數運行它以獲取字段名稱。我能夠使用以下方法在單行上成功執行此操作。return axios.get('urltoapi').then((res) => { const row = res.data; return convertHubdbKeyValues(table_name, row.values).then((details) => {  return {   details,  }; });});然后我嘗試遍歷多行來構建一個數據數組,但我得到的只是一個空數組,我確定我在這里做一些非?;镜腻e誤return axios .get(getRowByQueryUrl(table_details.table_id, query)) .then((res) => {  var bookings = [];  this.data = res.data;  this.data.objects.forEach((item) => {   return convertHubdbKeyValues(table_name, item.values).then(    (updatedValues) => {     bookings.push(updatedValues);    }   );  });  return bookings; });
查看完整描述

1 回答

?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

在您當前的實現中,數組在內部的異步調用完成bookings之前返回。forEach解決這個問題的一種方法是使用Promise.all:


return axios

 .get(getRowByQueryUrl(table_details.table_id, query))

 .then((res) => {

  const promises = res.data.objects.map(item => convertHubdbKeyValues(table_name, item.values))

  return Promise.all(promises)

 });

頂級函數將返回一個解析為數組的承諾updatedValues,正如您在上面所說的那樣。


查看完整回答
反對 回復 2023-03-24
  • 1 回答
  • 0 關注
  • 207 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號