日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

rxjs的一个例子:什么是rxjs的OperatorFunction?

發(fā)布時間:2023/12/19 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 rxjs的一个例子:什么是rxjs的OperatorFunction? 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在StackBlitz里創(chuàng)建一個rxjs項目,源代碼如下:

import { Observable, of } from "rxjs"; import { map } from "rxjs/operators"; import { interval } from "rxjs"; import { switchMap } from "rxjs/operators";const pollTasks = () => {return interval(1000).pipe(switchMap(counter => {return of(counter + 100);}),map(res => res + res)); };// caller can do subscription and store it as a handle: let tasksSubscription = pollTasks().subscribe(data =>console.log("timestamp: " + new Date() + ": " + data) ); // turn it off at a later timesetTimeout(() => tasksSubscription.unsubscribe(), 10000);

十秒之后自動關(guān)閉:

首先用rxjs interval創(chuàng)建一個Observable對象,每隔1秒鐘產(chǎn)生一個遞增的整數(shù):

interval(1000)返回的Observable調(diào)用pipe進(jìn)行下一步處理:switchMap.

注意該switchMap的類型,接受一個輸入?yún)?shù),project函數(shù)。該project函數(shù)的輸入是:value: number, index: number, 必須返回Observable. 整個project的函數(shù)類型是OperatorFunction<number, number>.

下面這個例子更加能夠說明問題:

import { Observable, of, OperatorFunction } from "rxjs"; import { map } from "rxjs/operators"; import { interval } from "rxjs"; import { switchMap } from "rxjs/operators";const add1Fn = value => value + 1; const add1OP: OperatorFunction<number, number> = map(add1Fn);const pollTasks = () => {return interval(1000).pipe(switchMap(counter => {return of(counter + 100);}),map(res => res + res),add1OP); };// caller can do subscription and store it as a handle: let tasksSubscription = pollTasks().subscribe(data =>console.log("timestamp: " + new Date() + ": " + data) ); // turn it off at a later timesetTimeout(() => tasksSubscription.unsubscribe(), 3000);

將函數(shù)傳入rxjs的operator,返回的是一個operatorFunction,將這個operatorFunction傳入pipe,返回的是新的Observable.

更多Jerry的原創(chuàng)文章,盡在:“汪子熙”:

總結(jié)

以上是生活随笔為你收集整理的rxjs的一个例子:什么是rxjs的OperatorFunction?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。