Min*_*Vox 8 javascript object promise
Promise.all当参数传递给每个promise时,如何添加一个promises数组?
例如;
var config = {
name: [
function(val) {
return new Promise(function(resolve, reject) {
resolve('This is ok')
})
},
function(val) {
return new Promise(function(resolve, reject) {
resolve('This is ok')
})
}
],
gender: [
function(val) {
return new Promise(function(resolve, reject) {
resolve('This is ok')
})
},
function(val) {
return new Promise(function(resolve, reject) {
reject('This is NOT ok')
})
}
]
}Run Code Online (Sandbox Code Playgroud)
我基本上想做Promise.all(config[name], ...).这实际上将在一个循环中进行,这样我就可以迭代一个表单对象,传递每个键以获得一个关联的promises数组并将值传递给每个promise.
编辑 小提琴实现了接受的答案,为好奇.
使用map调用函数并返回一组promise.
Promise.all(config[name].map(callback => callback(val))
.then(values => {
// executed when all promises resolved,
// values is the array of values resolved by the promises
})
.catch(err => {
// catch if single promise fails to resolve
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8905 次 |
| 最近记录: |