第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

承諾的返回值是不同的,當我在功能之外使用它時,不能真正理解為什么

承諾的返回值是不同的,當我在功能之外使用它時,不能真正理解為什么

翻翻過去那場雪 2022-08-27 15:24:41
我有2個js文件。我正在嘗試從 中的函數調用承諾的結果。如果我控制臺.log里面,它就會用數據記錄預期的對象,一切都很好,但是一旦我嘗試將值s存儲在變量中,然后控制臺此變量,它表明它內部有一些狀態(tài)平移的承諾...什么?有什么我不知道的嗎?我再次將其包裝成以獲得結果,這就是我在該函數中期望的,但是一旦我從func返回值,它就會失去承諾。問題:如何正確地將值返回給變量?index.jsall()listings.jsasync function all()returnindex.jawait索引.jsimport 'babel-polyfill';import {all} from './listings';let result = all();console.log(result); //returns promise, why???列表.jsexport async function all() {    let res = await makeRequest('http://sellbuyschool42.com/listings');    console.log(res); //return expected object with data, all is GOOD    return res;}function makeRequest($url, options= {}){    return fetch($url).then((responce) => {        if(responce.status != 200)        {            return responce.text().then((text) => {                throw new Error(text);            })        }        return responce.json();    })}
查看完整描述

1 回答

?
守著一只汪

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

請記住,異步函數返回一個 promise。它不會返回該承諾的結果。相反,您必須解析該承諾才能獲得該值。


在索引.js文件中,調用函數時,需要使用或獲取異步函數的實際結果。all()then()await


let result = await all();

console.log(result);


all().then((result) => {

    console.log(result);

}

請記住,在第一個解決方案中(如果使用 await),還需要使該父函數異步。


查看完整回答
反對 回復 2022-08-27
  • 1 回答
  • 0 關注
  • 101 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

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

公眾號

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