关于如何从承诺中回报价值的问题很多,但我看不出有什么能回答我的问题。
这是我的功能:
function f1(arr, num) {
return new Promise(function(resolve, reject) {
resolve(data);
}).then(function(data){
f2.then(function(d){
// how to return d
}).catch(...);
function f2(data){
return new Promise(function(resolve, reject){
data = data + 1
resolve (data);
});
};
})
.catch(function(){...});
}
如何返回d
此配置?
我想你在找
function f1(arr, num) {
return new Promise(function(resolve, reject) {
resolve(data);
}).then(function(data){
return f2(data).then(function(d){
// ^^^^^^ don't forget this
// ^^^^^^ call the function
return d;
// ^^^^^^^^^ simply and literally return d
}).catch(...);
function f2(data){
return new Promise(function(resolve, reject){
data = data + 1
resolve (data);
});
};
})
.catch(function(){...});
}
或写得更好
function f1(arr, num) {
return Promise.resolve(data)
.then(f2)
.catch(function(){...});
}
function f2(data){
return new Promise(function(resolve, reject){
… // do some async work
resolve(data + 1);
});
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句