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

如何從Promise響應中返回數(shù)據(jù)
P粉988025835
P粉988025835 2023-07-28 10:32:51
0
1
578
<p>如何正確地從Promise中返回數(shù)據(jù)?我有以下代碼:</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,最終得到的是一個不返回任何內容的void函數(shù),為什么?我在這里漏掉了什么?</p>
P粉988025835
P粉988025835

全部回復(1)
P粉426906369

至少,您的getPageData函數(shù)本身應該是一個async函數(shù)(為了代碼可讀性的清晰),它將返回getApiData調用返回的Promise。

例如:


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

進一步的兩個提示:

您需要解析這個Promise才能讀取數(shù)據(jù)。

您可以決定在這里或者調用層次結構較高的位置進行錯誤處理

經驗法則:

async函數(shù)只是返回一個Promise對象的函數(shù)。

只有在Promise被解析(使用await或.then())時才會返回實際數(shù)據(jù)

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