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

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

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

瀏覽:108日期: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
相關文章:
主站蜘蛛池模板: 国产福利资源在线 | 国产精品久久久久一区二区三区 | 欧美一区二区三区,视频 | 韩国av影院 | 国产精品久久久久一区二区三区 | 一区视频 | 久久国产精品99久久久大便 | 99福利 | 99riav国产一区二区三区 | 在线免费国产 | 国产精品久久久久久久久久久久午夜片 | 日韩免费av网站 | 国产精品海角社区在线观看 | 欧美日韩国产精品一区二区 | 国产高清自拍视频在线观看 | 欧美精品久久久久 | 国产人成精品一区二区三 | 国产目拍亚洲精品99久久精品 | 91性高湖久久久久久久久_久久99 | 久久性色 | 九色视频网 | 国产免费一区二区 | 国产福利91精品 | 免费成人高清 | 久久国产精品久久久久久 | 亚洲精品日日夜夜 | 国产精品久久久久久久久免费桃花 | 欧美日韩视频在线 | 天堂在线网 | 精品在线免费看 | 久久99精品久久久久久国产越南 | 久久精品福利视频 | 亚洲网址 | 一区二区在线不卡 | 久久久久久久久久毛片 | 国产精品一区二区久久久久 | 久久激情网 | 羞羞视频网页 | 成人高清网站 | 久久精品国产一区二区电影 | 午夜在线精品偷拍 |