节点生成器:在顶层使用yield
我试图创build一个工作,它重用了我强烈依赖节点和谐的快速应用程序中的模块。 (而且很好用),但是我不知道如何在“顶层”使用生成器。
所以我有这个文件job.js
var locator = require('./../locatorSetup'); yield locator.connect(); // returns a promise console.log('connected');
我从哪开始打电话
node --harmony job.js
不幸的是我得到:
yield locator.connect(); ^^^^^^^ SyntaxError: Unexpected identifier
什么是这样做的推荐方式?
PS我正在使用蓝鸟作为我的诺言库..
你不能。 yield
只能在发电机function内使用。
考虑使用co在顶层执行生成器函数,如下所示:
co(function *() { yield locator.connect(); });
co
返回一个承诺,然后可以使用它来跟踪传递的生成器函数的完成。