簡體   English   中英

將RxJS 5 Rx.Observable.timer(3000).mapTo({id:1})轉換為RxJS 6嗎?

[英]Converting RxJS 5 Rx.Observable.timer(3000).mapTo({ id: 1 }) to RxJS 6?

我們如何轉換:

Rx.Observable.timer(3000).mapTo({ id: 1 }) 

到RxJS 6?

例如,如果我們:

 import { Observable, timer } from 'rxjs';

我們仍然得到:

[ts]屬性“ timer”在“ typeof Observable”類型上不存在。

總之,我正在嘗試使此示例(來自本教程)工作:

    // Simulate HTTP requests 
    const getPostOne$ = Rx.Observable.timer(3000).mapTo({id: 1});
    const getPostTwo$ = Rx.Observable.timer(1000).mapTo({id: 2});

    Rx.Observable.concat(getPostOne$, getPostTwo$).subscribe(res => console.log(res));

使用新的方法做管道運算符,我們不再使用. 鏈接可觀察變量,但我們使用管道並傳入以逗號分隔的運算符。 在您的方案示例中,我們將

import { timer, concat } from 'rxjs'
import { mapTo } from 'rxjs/operators'

  getPostOne$ = timer(3000).pipe(mapTo({ id: 1 }));
  getPostTwo$ = timer(1000).pipe(mapTo({ id: 2 }));

  concat(getPostOne$, getPostTwo$).subscribe(res => console.log(res));

您可以在此處閱讀更多關於可管道運算符的信息

希望這可以幫助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM