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

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

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

瀏覽:141日期: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
主站蜘蛛池模板: 久久99爱视频 | 色综合久久久久久 | 国产高清av在线播放 | 我要看a级毛片 | 日韩精品一级毛片 | 国产人做人爱免费视频 | 亚洲国产精品成人午夜在线观看 | 亚洲国产精品欧美日韩一区二区 | 香蕉福利久久福利久久香蕉 | 亚洲国产精品久久久久秋霞不卡 | 日本欧美一区二区三区不卡视频 | 欧美综合亚洲 | 视频一二三区 | 手机免费黄色网址 | 欧美亚洲视频 | 永久免费看毛片 | 毛片成人永久免费视频 | 手机看片国产欧美日韩高清 | 99精品久久久久久久免费看蜜月 | 精品72久久久久久久中文字幕 | 免费视频久久 | 亚洲视频日韩 | 黄色网址亚洲 | 欧美日韩精品免费一区二区三区 | 国产精品福利午夜一级毛片 | 日韩在线国产精品 | 国产精品免费大片一区二区 | 手机国产日韩高清免费看片 | 毛片视频网址 | 国内精品久久影视 | 日韩女人做爰大片 | a毛片全部播放免费视频完整18 | 国产在线一区二区三区在线 | 99精品在免费线视频 | 久久精品中文字幕首页 | 深夜福利爽爽爽动态图 | 国产年成美女网站视频免费看 | 亚洲国产精品线播放 | 欧美性色一级在线观看 | 国产网址在线 | 毛片在线视频在线播放 |