为了账号安全,请及时绑定邮箱和手机立即绑定

async await 如何解决 传染性/传播性

async await 如何解决 传染性/传播性

狐的传说 2018-09-03 09:15:22
7.x的Node 能支持async/await可谓是大快人心,浏览器上也能通过babel转换成es5来耍不过async/await毕竟是有传染性的,你一个地方使用了 所有的调用的地方都得用async function fun1(){    return await new Promise(function(resolve){         setTimeout(function(){             resolve('resolved');         },2*1000);     }); }async function fun2(){    let d;    try{         d = await fun1();     }catch(e){}         return d; } (async ()=>{    console.log('---->');    let d = await fun2();    console.log('d=',d); })();如上面的栗子,fun1开始 沿路一直到最后必须都加上async/await关键字,这就非常蛋疼了,因为一旦漏了就有可能会出问题,而在某些极端的情况下势必每个function都是写成async function的不知道现在大家是怎么处理这样的问题的?通篇都加async么?特别是通过babel转换之后的状态机很复杂,不好调试.当然 如果你当中的fun2只是单纯的return操作,可以不加,不过既然多个function肯定会引入其它处理,这里只是简化下例子而已谢谢.
查看完整描述

目前暂无任何回答

  • 0 回答
  • 0 关注
  • 705 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信