1. 我的工作主要是pomelo node.js后端主程,因为之前经常用async.waterfall 这个第三方async库,并且这个库也很好用,就是代码有些多,后来换工作了公司用了新框架。
2. 开始大量使用async/await来开发, 或者用promise或者其他的东西,主要目的就是为了解决低于地狱回调的问题。
3. 使用async/await的过程中发现一个问题,因为服务器端开发,所以对错误是很敏感的,并不允许有错误,而不去管它,当时能想到的方案有两个。
其一:对用到 await的地方用try catch
其二是:
如果有多个await的话,每个都用try catch那样体验很不好,所以我经常在项目中用到的就是方法二,但是方法二也不是很好。
然后我在网上找了找,还有一种方法,就是参考了golang 的写法。自己写一个函数 to.js
这样就完美地解决了async/await错误的问题,很好的一个方法,明白一个东西很容易,要写出来还是需要点时间的。
当然后 npm上有 await-to-js 这个,那么只需要 npm i await-to-js --save即可了,这个包的代码很简单,和我上面to.js里的内容是一样的.
有疑问加站长微信联系(非本文作者)