亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

如何從Promise響應(yīng)返回?cái)?shù)據(jù)
P粉988025835
P粉988025835 2023-07-28 10:32:51
0
1
577
<p>如何正確地從Promise返回資料?我有以下程式碼:</p> <pre class="brush:php;toolbar:false;">const axios = require("axios").default; async function getApiData(pathName: string, locale: string) { const {axiosRequestUrl} = getApiVars(pathName, locale); const axiosClient = axios.create({ baseURL: process.env.CONTENT_DOMAIN, proxy: false }) return await axiosClient.get(axiosRequestUrl); } export default function getPageData() { getApiData('shared-content', 'en-us') .then((data) => { return data; }) .catch((error: any) => { // log error here }) }</pre> <p>但是,如果我嘗試從元件中使用getPageData,最終得到的是一個(gè)不傳回任何內(nèi)容的void函數(shù),為什麼?我在這裡漏掉了什麼? </p>
P粉988025835
P粉988025835

全部回覆(1)
P粉426906369

至少,您的getPageData函數(shù)本身應(yīng)該是一個(gè)async函數(shù)(為了程式碼可讀性的清晰),它將傳回getApiData呼叫傳回的Promise。

例如:


export default async function getPageData() {
    return getApiData('shared-content', 'en-us');
}

進(jìn)一步的兩個(gè)提示:

您需要解析這個(gè)Promise才能讀取資料。

您可以決定在這裡或呼叫層次結(jié)構(gòu)較高的位置進(jìn)行錯(cuò)誤處理

經(jīng)驗(yàn)法則:

async函數(shù)只是傳回一個(gè)Promise物件的函數(shù)。

只有在Promise被解析(使用await或.then())時(shí)才會(huì)傳回實(shí)際資料

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板