第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何僅緩沖來自可觀察源的選定項(xiàng)目集并立即發(fā)出其他項(xiàng)目?

如何僅緩沖來自可觀察源的選定項(xiàng)目集并立即發(fā)出其他項(xiàng)目?

守候你守候我 2021-12-12 09:46:18
例如,我有一個(gè)每秒發(fā)出一個(gè)數(shù)字的 observable。我想將它們緩沖到數(shù)組中 4 秒。但是當(dāng)源發(fā)出一個(gè)可以被 5 整除的數(shù)字時(shí),我想立即發(fā)出它而不是緩沖它。// emit value in sequence every 1 second// 0,1,2,3,4,5...const source = interval(1000);// buffer values for 4 secondsconst buffered = source.pipe(  buffer(interval(4000)),  filter(x => x.length > 0)  );const subscribe = buffered.subscribe(val => console.log(val));我的預(yù)期結(jié)果是:[0,1,2,3] // buffered and emitted after 4 seconds[5] // emitted immediately[4,6,7,8] // buffered and emitted after 4 seconds[10] // emitted immediately[9,11,12,13]// ... and so onStackblitz:https ://stackblitz.com/edit/typescript-cdvc2d ? file = index.ts
查看完整描述

2 回答

?
一只甜甜圈

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超5個(gè)贊

擁有兩個(gè)具有兩種不同職責(zé)的可觀察對(duì)象,然后將它們合并在一起怎么樣?


const source = interval(1000);


// buffer values for 4 seconds

const buffered = source.pipe(

  buffer(interval(4000)),

  filter(x => x.length > 0)  

);


const multipleOfFive = source.pipe(

  filter(x => x % 5 === 0)

);


const subscribe = merge(buffered, multipleOfFive).subscribe(val => console.log(val));

我不確定您是否還想過濾第一個(gè) observable 中 5 的倍數(shù),但這很容易做到。


查看完整回答
反對(duì) 回復(fù) 2021-12-12
?
慕姐8265434

TA貢獻(xiàn)1813條經(jīng)驗(yàn) 獲得超2個(gè)贊

您可以使用multicast將源流拆分為兩個(gè),然后使用不同的filter運(yùn)算符將它們?cè)俅魏喜ⅰ?/p>


import { of, interval, Subject, merge } from 'rxjs';

import { bufferTime, multicast, filter } from 'rxjs/operators';


const buffered = source.pipe(

  multicast(new Subject(), s => merge(

    s.pipe(

      filter((value: number) => value % 5 === 0),

    ),

    s.pipe(

      filter((value: number) => value % 5 !== 0),

      bufferTime(4000),

    ),

  ))

);

你更新的演示:https : //stackblitz.com/edit/typescript-sbhn8s?file=index.ts


查看完整回答
反對(duì) 回復(fù) 2021-12-12
  • 2 回答
  • 0 關(guān)注
  • 161 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)