RxJS isEmpty

2020-10-14 10:16 更新

如果輸入 observable 發(fā)出任何值,則發(fā)出 false;如果輸入 observable 發(fā)出任何值,則發(fā)出 true。 輸入的可觀察輸入完成而沒有發(fā)出任何值。

isEmpty<T>(): OperatorFunction<T, boolean>

參量

沒有參數(shù)。

returns

OperatorFunction<T, boolean>:一個布爾值的 Observable,它指示 observable 是否為空

描述

告訴可觀察對象是否發(fā)出任何值

isEmpty marble diagram

isEmpty將發(fā)出值的 Observable 轉(zhuǎn)換為 發(fā)出一個布爾值,表示是否有任何值 由源 Observable 發(fā)出。 只要源 Observable 發(fā)出一個 值, isEmpty將發(fā)出 false并完成。 如果源可觀察 完成不發(fā)出任何東西, isEmpty將發(fā)出 true和 完成。

使用可以達到類似的效果 count,但 isEmpty可以發(fā)出 一個 false值越快。

例子

發(fā)出 false非空的可觀察值

import { Subject } from 'rxjs';
import { isEmpty } from 'rxjs/operators';


const source = new Subject<string>();
const result = source.pipe(isEmpty());
source.subscribe(x => console.log(x));
result.subscribe(x => console.log(x));
source.next('a');
source.next('b');
source.next('c');
source.complete();


// Results in:
// a
// false
// b
// c

發(fā)出 true空的Observable

import { EMPTY } from 'rxjs';
import { isEmpty } from 'rxjs/operators';


const result = EMPTY.pipe(isEmpty());
result.subscribe(x => console.log(x));
// Results in:
// true

也可以看看

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號