我多年来一直使用节点的异步作为我的标准流量控制机制。它有效,而且自决定这样做以来,我从未讨论或阅读过它。
显然,对于生成器和承诺(其中Q似乎有可接受的文档),我应该能够做到:
var data = fs.readFile(somefile);
让它处理异常。这很好。然而,我所读到的所有文档都是关于流控制,协程,thunking,nodeification等历史的两千字论文。
如何使用ES6生成器和Q进行简单的常规节点std库调用?
答案 0 :(得分:0)
https://github.com/kriskowal/q/tree/HEAD/examples/async-generators有一些简单的例子。对于您的实例,它看起来像这样:
Q.spawn(function* () {
…
var data = yield Q.ninvoke(fs, "readFile", somefile);
…
});