co 里一段代码,看到时卡壳了。函数可以带参数不带无参数执行
希望有人解释下这种处理,不怎么常见。
onFulfilled();
/**
* @param {Mixed} res
* @return {Promise}
* @api private
*/
function onFulfilled(res) {
var ret;
try {
ret = gen.next(res);
} catch (e) {
return reject(e);
}
next(ret);
}
还有一个简单的自动执行promise的功能写法:
function run(gen){
var g = gen();
function next(data){
var result = g.next(data);
if (result.done) return result.value;
result.value.then(function(data){
next(data);
});
}
next();
}
run(gen);
2 回复