将 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] Property 'timer' does not exist on type 'typeof Observable'.
总而言之,我正在尝试让这个示例 (From this tutorial) 工作:
// 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));
您可以阅读更多关于管道运算符的内容Here
希望对您有所帮助!
我们如何转换:
Rx.Observable.timer(3000).mapTo({ id: 1 })
到 RxJS 6?
例如,如果我们:
import { Observable, timer } from 'rxjs';
我们仍然得到:
[ts] Property 'timer' does not exist on type 'typeof Observable'.
总而言之,我正在尝试让这个示例 (From this tutorial) 工作:
// 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));
您可以阅读更多关于管道运算符的内容Here
希望对您有所帮助!