av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

javascript - 如何在非async函數下使用await

瀏覽:111日期:2023-09-20 10:52:43

問題描述

await需要在async函數中使用,所以每次我們想要使用await必須先在async函數中定義,然后調用這個async函數。

就比如這樣

async function fn(){}fn()

詳細一點的例子

async function asy(){ // 獲取當前城市的位置 獲取熱門城市 獲取所有城市 const [resCityGuess,resCityHot,resCityAll]=await Promise.all([ this.http.get(’api/v1/cities?type=guess’), this.http.get(’api/v1/cities?type=hot’), this.http.get(’api/v1/cities?type=group’) ]) this.cityGuessName=resCityGuess.data.name; this.cityGuessId=resCityGuess.data.id; this.cityHot=resCityHot.data; this.cityAll=resCityAll.data;}asy.apply(this);

每次使用await之前都需要多定義一次async然后再調用,這一個過程我覺得略微麻煩以及重復,所以想問下是否存在什么辦法優化或者解決這一問題?

問題解答

回答1:

async 可以不需要 await, await 必須依賴 async

回答2:

async聲明的函數返回值是Promise對象:

這樣一個函數

async function fn() {}

使用await就需要放在async函數中

async function anthor() { await fn()}

不使用await就當作Promise用

function anthor() { fn().then(...).catch(...)}回答3:

試試這樣

function asy(){ // 獲取當前城市的位置 獲取熱門城市 獲取所有城市 Promise.all([this.http.get(’api/v1/cities?type=guess’),this.http.get(’api/v1/cities?type=hot’),this.http.get(’api/v1/cities?type=group’) ]).then(values =>{this.cityGuessName=resCityGuess.data.name;this.cityGuessId=values[0].data.id;this.cityHot=values[1].data;this.cityAll=values[2].data; });}asy.apply(this);

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 中国a一片一级一片 | 精品欧美一区二区三区久久久 | 国产精品美女久久 | 一区二区三区网站 | 长河落日连续剧48集免费观看 | 日韩久久一区 | 国产精品久久久久永久免费看 | 国产精品美女久久久久久久久 | 欧美性色网 | 国内精品一区二区三区 | 久久精品在线 | 欧美一级艳片视频免费观看 | 亚洲福利视频一区 | 国产欧美日韩在线视频 | 日韩视频免费大全中文字幕 | 中文字幕在线观看亚洲 | 麻豆黄色片 | 日韩免费成人 | 亚洲一区久久 | 天堂成人在线 | 欧美激情综合五月色丁香 | 青青草av | 亚洲成人精品在线观看 | 国产精品国产三级国产aⅴ浪潮 | 成人亚洲视频 | 亚洲第一色网 | 日本毛片视频 | 国产精品视频一区二区三区 | 俄罗斯毛片 | 91久久国产综合久久 | 97自拍视频 | 黄色激情视频网站 | 最新日韩av | 毛片在线免费 | 在线a| 9l视频自拍九色9l视频成人 | 国产乱人乱偷精品视频 | 久久久久久久99 | 欧美亚洲一区二区三区 | 中文字幕久久久 | 精品免费国产一区二区三区四区 |