【发布时间】:2018-03-27 08:44:53
【问题描述】:
我有一个检索数据的可观察对象,这些值是来自 Promise 的参数。为了使 Promises 期望来自 observable 的值并且这不会导致错误,将这些值连接起来的更好方法是什么?
let user, id, settings;
this.UserService.getUserData().subscribe(user => {
user = user.name;
id = user.id;
});
this.UserConfiguration.getSettings(user, id)
.then(res => {
settings = res.settings;
debugger
});
另一种方法是在可观察对象中调用承诺,但我不确定将参数传递给可观察对象的最佳方法是什么。
this.UserService.getUserData().subscribe(user => {
this.UserConfiguration.getSettings(user.name, user.id)
.then(res => {
settings = res.settings;
debugger
});
});
【问题讨论】:
-
有点难以理解你在问什么。想知道如何将两个
Observables 的结果合并为一个吗? -
我试图获得更好的方法来获取参数,然后传递到承诺中,在这个方法中,从可观察的值中获取值,然后将赋值给变量,另一种方法是调用承诺可观察的。
-
第一种方案行不通。第二种选择可能。你试过第二个吗?没用吗?
-
第一个替代方案正在工作,似乎 asycronus 分配以正确的方式传递参数,但我想知道更好的方法。
-
.then(resolvedData)?这不是.then的用途吗?
标签: javascript angular promise observable