我写controller,容易一层一层嵌套,回调里再执行另一个controller
const aa = require("aa")
const bb = require("bb")
const cc = require("cc")
aa(data, (aaRes)=> {
bb (aaRes, (bbRes) =>) {
cc (bbRes, (ccRes) =>) {
res.send({
code:0,
msg: "获取成功"
})
}
}
})
怎么优化这种写法?
从 Node 8 开始,Node 提供了
util.promisify()
](https://nodejs.org/dist/lates...)) 方法,可以将 callback 形式的 API 封装成 Promise 形式。但如果不是 Node 的标准 callback 形式,还是需要自己写封装(如下示例中的promisify()
。现在框架大多支持 Promise,如果不是非要用原生接口,考虑下 Koa?
参考阅读:
举个例: