我出错了
You provided 'undefined' where a stream was expected.
当我试图合并可观察到的东西时。
我在这里创建了我的可观察刷新:
refresh$: Observable<Funnel[]>;
然后我有一个计时器…
TimerObservable.create(0, (this.storageService.refRate * 1000))
.takeWhile(() => this.interval)
.subscribe(() => {
this.refresh$ = this.funnelService.getStoryFunnels({}).map(response => [...response]);
});
然后,当我尝试合并可观察到的数据时,会产生错误:
this.funnels$ = this.funnelService.getStoryFunnels({}).pipe(
merge(this.refresh$, funnelCreation$.pipe(
filter(funnel => !!funnel),
map(funnel => [funnel])
)
)
);
根据Cozzy的回答更新:
this.refresh$ = TimerObservable.create(0, (this.storageService.refRate * 500))
.takeWhile(() => this.interval)
.switchMap(() => this.funnelService.getStoryFunnels({}).map(response => [...response]));
this.funnels$ = this.funnelService.getStoryFunnels({}).pipe(
merge(this.refresh$, funnelCreation$.pipe(
filter(funnel => !!funnel),
map(funnel => [funnel])
)
)
);