我开始使用蓝鸟代替Q
目前我使用的代码如下
runProcess = function(path) {
var result = Promise.defer();
fs.readFileAsync(path)
.then(function (Content) {
var parser = new parseFile(Content);
var adpt = parser.update();
result.resolve(adpt);
}, function(error) {
result.reject(error);
});
return result.promise;
}
我的问题是否有更好的方法来写它?
答案 0 :(得分:1)
是的,它可以改进,
第1步:停止使用承诺包装承诺:
runProcess = function(path) {
return fs.readFileAsync(path)
.then(function (Content) {
var parser = new parseFile(Content);
return parser.update();
});
}
在非常短的ES6表格中,它可能是:
runProcess = path => fs.readFileAsync(path)
.then( content => (new parseFile(content )).update())