使用generator和Q的最简单的fs.readFile示例?

时间:2014-02-10 16:28:58

标签: node.js generator promise q

我多年来一直使用节点的异步作为我的标准流量控制机制。它有效,而且自决定这样做以来,我从未讨论或阅读过它。

显然,对于生成器和承诺(其中Q似乎有可接受的文档),我应该能够做到:

var data = fs.readFile(somefile);

让它处理异常。这很好。然而,我所读到的所有文档都是关于流控制,协程,thunking,nodeification等历史的两千字论文。

如何使用ES6生成器和Q进行简单的常规节点std库调用?

1 个答案:

答案 0 :(得分:0)

https://github.com/kriskowal/q/tree/HEAD/examples/async-generators有一些简单的例子。对于您的实例,它看起来像这样:

Q.spawn(function* () {
    …
    var data = yield Q.ninvoke(fs, "readFile", somefile);
    …
});