0

我有一个使用yield语句的辅助构造函数:

var co = require('co');

var Helper = co(function* () {
    var response = yield foo();
})
module.exports.Helper = Helper;

我想实例化它:

var Helper = require('./helper.js').Helper;
var helper = new yield Helper();  // TypeError

但我收到以下错误: TypeError: You may only yield a function, promise, generator, array, or object, but the following was passed: "[object Object]".

关于如何正确实例化它的任何想法?


编辑

删除了对 koa 的引用,因为我使用的是 co(正如 vanthome 所指出的那样)。

4

1 回答 1

1

new在这里在生成器函数上使用运算符是没有意义的。操作员。

此外,您的示例与koajs 无关,您显然在这里使用co,这是另一回事。Co 的 Sinve 版本 4,该调用co(...) 为您提供了可以使用的承诺

于 2015-01-27T07:15:19.780 回答