我正在努力讓我的頭在Angular2中的觀察者周圍。我有一個可觀察forEach內的觀察2訂閱。在另一個可觀察的訂閱中嵌套可觀察訂閱是否可以接受
因此,它是如下:
- 的forEach獲取路線ID(輪詢ID)
- (嵌套在1)認購使用路由 ID從數據庫中獲取投票(投票編號)
- (2嵌套)訂閱會從數據庫中使用 投票IDS createdById
正如你可以看到有很多的嵌套的事情的createdBy用戶這只是感覺不對。有沒有更好的方法來實現這個目標?
這是我的代碼:
poll: Poll;
createdBy: string;
constructor(public route: ActivatedRoute, public teamPollsService: TeamPollsService) { }
ngOnInit(): void {
let id: any;
// 1.
this.route.params.forEach((params: Params) => {
id = params['id'];
// 2.
this.pollService.getPoll(id).subscribe((x) => {
this.poll = x;
// 3.
this.users.getDbUser(x.createdById).subscribe((user) => {
createdBy = `${user.firstName} ${user.lastName}`;
});
});
});
感謝。
這工作!雖然我不得不使用switchMap而不是flatMap。謝謝。 – Peza