【发布时间】:2022-06-29 05:11:13
【问题描述】:
我正在尝试执行以下操作:
this.httpService.createSomething(
this.userObserver.getFullName().subscribe(),
this.userObserver.getPhoneNumber().subscribe(),
this.userObserver.getEmailAddress().subscribe(),
).subscribe(() => console.log('Well done'));
以上内容不起作用,但这是我可以用来描述我正在努力实现的目标的最佳示例
我可以订阅每个 userObserver 方法并将输出值分配给组件属性并将组件属性值传递给 createSomething() 方法,但这看起来很混乱
很高兴在 Angular 模板中我可以使用 (this.userObserver.getFullName()|async) 来查看它的输出值,我希望在方法参数中使用它
这可能吗?
【问题讨论】:
-
您可能需要在包装 getFullName、getPhoneAddress 和 getEmailAddress 的 combineLatest 上使用 switchMap。一旦 combineLatest 生成的 observable 发出,switch map 将订阅 createSomething