我尝试用co制作一些节点脚本。它运作良好,但在脚本完成之前有很大的延迟。 (我得到了#34;好的"或者"坏"一秒后,但脚本在它之后7秒完成)。我错过了什么?
.done
答案 0 :(得分:0)
运行代码时出现typeError。我不确定你在那里尝试做什么,但我认为在调用co()时你不能将错误处理程序作为第二个参数传递,你必须使用then()或catch()来进行错误处理。
// Here's an example
co(function*() {
var result = yield Promise.resolve(true);
return result;
}).then(function(value) {
console.log(value);
}, function(err) {
console.error(err.stack);
});
// you can also catch the error
co(function *(){
// yield any promise
var result = yield Promise.resolve(true);
}).catch(onerror);
function onerror(err) {
// log any uncaught errors
// co will not throw any errors you do not handle!!!
// HANDLE ALL YOUR ERRORS!!!
console.error(err.stack);
}
答案 1 :(得分:0)
我认为process.exit()
会解决您的问题。