我將如何將其轉換為使用 async/await 而不是 fetch?抱歉,我對這個主題真的很困惑,非常感謝一些幫助。
coreHTTP.prototype.post = (url, data) => {
return new Promise((resolve, reject) => {
fetch(url, {
method: "POST",
headers: {"content-type": "application/json"},
body: JSON.stringify(data)
})
.then(res => res.json())
.then(data => resolve(data))
.catch(err => reject(err));
});
}
uj5u.com熱心網友回復:
如何保持 fetch 原樣?如果您只想使用等待,那么它在那里沒有問題。
coreHTTP.prototype.post = async (url, data) => {
const responseData = await fetch(url, {
method: "POST",
headers: {"content-type": "application/json"},
body: JSON.stringify(data)
});
const responseJson = await responseData.json();
return responseJson;
}
uj5u.com熱心網友回復:
你可以試著像這樣記住它。JS 正確使用異步編碼,因此我們使用 Promise 來做到這一點。一種方法是,如您在問題中所見,您呼叫資源(在本例中為 fetch),然后我們使用.thenand等待資源修改.catch。
類似地,對于 async/await 邏輯是相同的,只是語法有點不同。首先,要在任何函式中使用 await,我們必須首先將函式定義為 as async,然后您只需在其中使用的任何函式之前使用 await。您還可以使用 try/catch 更好地處理錯誤。如果您需要幫助了解更多資訊,請告訴我。我是這個評論部分的新手,所以我不知道如何準確附加代碼片段,但我現在會附上螢屏截圖供您參考。

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/346710.html
標籤:javascript 异步
