我正在编写一些当前看起来像这样的代码,因为我的代码中有依赖项.我想知道是否有一种更简洁的方法来使用Promise.all()?这是我的伪代码:
return someService.getUsername()
.then(function(username) {
user = username;
})
.then(function() {
return someService.getUserProps(user);
})
.then(function(userProps) {
userProperties = userProps;
return someService.getUserFriends(user);
})
.then(function(userFriends) {
friends = userFriends;
})
.catch(error)
.finally(function(){
// do stuff with results
});
Run Code Online (Sandbox Code Playgroud)
重要的是我需要用户才能为getUserProps()和getUserFriends()进行第二次调用.我以为我可以这样使用Promise.all():
var user = someService.getUsername()
.then(function(username) {
user = username;
})
var getUserProps = someService.getUserProps(user);
var getUserProps = someService.getUserFriends(user);
return Promise.all(user, getUserProps, getUserFriends, function(user, props, friends) {
// do stuff with results
})
Run Code Online (Sandbox Code Playgroud)
但我不能让这个工作.这是正确使用的案例.all?