国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

javascript - 有一個異步獲取數據的函數A,其他依賴這個A得到的數據的函數是否都必須是異步的?

瀏覽:114日期:2023-02-16 08:34:38

問題描述

現在是這樣,函數a是Promise異步返回數據,其他很多函數需要用到這個數據,我現在是每個依賴這個數據的函數都要a().then()這樣處理

function a() { return new Promise((resolve, reject) => { .... })}function getsub(id) { return a() .then((data) => {return ..... }) .catch((err) => {...})}function tree(id) { return a() .then((data) => {return ..... }) .catch((err) => {...})}

其中有一些遞歸循環依賴,復雜度增加后我感覺我要瘋了,有沒有其他好點的寫法啊?

問題解答

回答1:

可以用點函數式編程的寫法:

function mapData(call) { return () => a() .then((data) => call(data)) .catch((err) => call(null, err))}function sub(data, err) { ... }function sub2(data, err) { ... }function sub3(data, err) { ... }const getsub = mapData(sub)const getsub2 = mapData(sub2)const getsub3 = mapData(sub3)回答2:

嘗試一下 ES7 的 async/await ?或者 引入 async.js 庫,前后端通用。

回答3:

如果實時性和獨立性要求都很高,那好像是沒什么辦法...不然可以嘗試緩存a...看看其他人怎么說

標簽: JavaScript
主站蜘蛛池模板: 毛片免费网址 | 欧美一级特黄aaaaaa在线看片 | 俄罗斯极品美女毛片免费播放 | www亚洲成人 | 性盈盈影院在线观看 | 久久厕所视频 | 国产亚洲人成网站在线观看 | 女子张开腿让男人桶视频 | 久久综合精品不卡一区二区 | 99久久免费午夜国产精品 | 成年人在线网站 | 国产90后美女露脸在线观看 | 亚洲日本欧美在线 | 国产成版人视频网站免费下 | 美国特级毛片 | 美女黄网站人色视频免费国产 | 一本色道久久综合亚洲精品加 | 久久久www免费人成看片 | 黄色视影 | 精品久久久久久中文字幕一区 | 99这里只有精品视频 | 性欧美videos 精品 | 成人观看的视频三级 | a级毛片在线播放 | 精品久久久久久亚洲 | 亚洲a成人 | 午夜男人女人爽爽爽视频 | 久久亚洲成a人片 | 无内丝袜透明在线播放 | 最新69成人精品毛片 | 两性色午夜视频免费国产 | 成人免费a视频 | 成人a在线观看 | 欧美.亚洲.日本一区二区三区 | 精品欧美一区二区精品久久 | 国产下药迷倒白嫩丰满美女j8 | 一级特黄aaa大片在 一级特黄aaa大片在线观看 | 国产欧美曰韩一区二区三区 | 欧美成人在线免费 | 亚洲高清国产一区二区三区 | 97在线看 |