国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-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
主站蜘蛛池模板: 免费精品99久久国产综合精品 | 国产成人久久精品二区三区牛 | 99热久久国产精品免费观看 | 国产高清晰在线播放 | 国产精品久久影院 | 日韩成人免费一级毛片 | 国产三级做爰在线观看∵ | 精品欧美亚洲韩国日本久久 | 中文字幕成人 | 亚洲精品高清在线 | 97超级碰碰碰碰在线视频 | 在线视频 自拍 | 欧美日韩精品一区二区在线线 | 久久久影院亚洲精品 | 在线观看成年人免费视频 | 国产日韩不卡免费精品视频 | 秘书高跟黑色丝袜国产91在线 | 久久国产午夜精品理论片34页 | 韩国一级a毛片 | 欧洲成人免费视频 | 99色在线播放 | 国产成人精品福利站 | 国产欧美日韩综合一区二区三区 | 亚洲国产欧洲精品路线久久 | 欧美一级片免费在线观看 | 国产精品三| 亚欧精品一区二区三区 | 国产成人免费福利网站 | 亚洲综合天堂网 | 美女国产福利视频 | 久久成| 在线观看国产精品入口 | 国产精品18久久久久网站 | 99久久亚洲国产高清观看 | 国产香港特级一级毛片 | 国产男女免费完整视频 | 国产成人精品日本亚洲专一区 | 伊人色综合7777 | 国产在线精品一区二区高清不卡 | 男人一进一出桶女人视频 | 日韩美女强理论片 |