【发布时间】:2015-12-26 10:21:55
【问题描述】:
既然 ES6 是 Node 4.x 的官方标准,那么如何使用 Promises?模块(例如本机 fs 模块)是否自动与 Promises 一起工作?还是必须专门编写模块才能使用 Promises?你怎么知道什么可以用 Promise 什么不能用?
有太多不同的 Promise 实现(Q、Bluebird 等),我不知道从哪里开始在 Node 4.x 中使用原生 Promise。
【问题讨论】:
-
我保证,你一定会很快得到答案的:)
-
我知道没有内置的 node.js 模块会为其异步操作返回承诺。他们仍然使用他们一直使用的相同回调。您可以做的是“承诺”这些接口中的任何一个,以制作返回标准 node.js 异步调用约定之外的承诺的函数。事实上,使用 Bluebird 的
Promisify.promisifyAll()之类的东西,您可以像var fs = Promise.promisifyAll(require("fs"));这样在require()时间承诺整个模块,然后该模块中的每个函数都有一个新的承诺版本。非常有用。
标签: javascript node.js promise