Hellow,我試圖創建存儲最後一項來自OBS的observable(OBS)和subject(SUB)的函數,而SUB具有F值 和發射它(只有它)當孫換成TRxJS函數從一個observable發出最後一個值然後發出true
OBS ---a----b----c----d----e----f----g----h-----
SUB ------F----------T------------F-------T-----
OUT -----------------c--------------------h-----
我試着用
OBS.window(SUB)
.withLatestFrom(SUB)
.switchMap(([window, status]) => {
if(status === F) {
return window.combineLatest(SUB, (cmd, status) => {
if(status === T) {
return null;
};
return cmd;
}).last((e) => {
return !!e;
})
}
return Observable.empty<Command>();
}).filter((cmd) => {
return !!cmd;
})
來解決這一點,但它不工作
如果'SUB'連續發出兩個'T',應該導致obse當'SUB'爲'F'時,仍然可以產生最後收到的值? –
@SergeyKaravaev,不,但它可以固定與distinctUntilChanged – llCorvinuSll