簡體   English   中英

如何讓 axios 返回 object 而不是 promise

[英]how to get axios to return the object instead of promise

目前,我的代碼正在返回 promise 我需要它返回從 API 調用獲得的 object,該怎么做?

import axios from 'axios';

const baseUrl = 'http://api.openweathermap.org/data/2.5/weather?';

const getWeatherData = async (city,country) => {
    // const result=await axios.get(`http://api.openweathermap.org/data/2.5/weather?q=${city},${country}&APPID=180941f68139fba12f166dc35d9b688b`)
    // return result;
    
    axios({
        method: "GET",
        url: `http://api.openweathermap.org/data/2.5/weather?q=${city},${country}&APPID=180941f68139fba12f166dc35d9b688b`,
      })
        .then((response) => {
          return response.data;
      
        })
        .catch((error) => {
          console.log(error);
        });
}

export default getWeatherData;
try {
  const response = await axios({
    method: "GET",
    url: `http://api.openweathermap.org/data/2.5/weather?q=${city},${country}&APPID=180941f68139fba12f166dc35d9b688b`,
  });
  return response.data;
} catch (err) {
  console.error(err);
}

您可以通過這種方式重寫您的 axios 調用,因為您的 function 被標記為異步。

異步函數總是返回承諾。 在異步函數中,您可以在其他異步函數或返回承諾的函數之前使用await

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM