const click$ = fromEvent(this.myButton.nativeElement, 'click');
const interval$ = interval(1000);
//mergeMap 每个click生产的流(interval) 都会保留。
click$.pipe(
mergeMap(() => interval$))
.subscribe(num => console.log(num));
//switchMap 只保留最后点击产生的interval
click$.pipe(
switchMap(() => interval$))
.subscribe(num => console.log(num));
//concatMap 每次click 新产生的interval需要等到当前的interval跑完后(3秒后) 才开始跑
click$.pipe(
concatMap(() => interval$.pipe(take(3))))
.subscribe(num => console.log(num));