Rxjs:shorthand of create observable from value or observable
Rxjs: shorthand of create observable from value or observable
我正在使用 rxjs
打字稿。我写了以下两个简单的函数。但是我猜 rxjs
已经有这样的功能了。 rxjs
吗?
export function isObservable(value: any): value is Observable<any> {
return value instanceof Observable;
}
export function createObservable<T>(value: T | Observable<T>): Observable < T > {
return isObservable(value) ? value : Observable.of(value);
}
我认为 RxJS 5 还没有完全具备此功能,因为应该由您来了解您正在使用的数据类型。
但是,您可以利用 RxJS 以相同方式处理任何 Observable、Promises、Observable-like、array-like 等对象的事实,并编写以下内容:
const val1 = Observable.of(42);
const val2 = [42];
Observable.from(val1).subscribe(console.log);
Observable.from(val2).subscribe(console.log);
在这两种情况下,这将只打印 42
,即使我曾经使用一个具有单个值的 Observable,然后使用一个具有单个值的数组。
不,它没有,可能是因为它不是很有用。您需要它用于哪些用例?
我正在使用 rxjs
打字稿。我写了以下两个简单的函数。但是我猜 rxjs
已经有这样的功能了。 rxjs
吗?
export function isObservable(value: any): value is Observable<any> {
return value instanceof Observable;
}
export function createObservable<T>(value: T | Observable<T>): Observable < T > {
return isObservable(value) ? value : Observable.of(value);
}
我认为 RxJS 5 还没有完全具备此功能,因为应该由您来了解您正在使用的数据类型。
但是,您可以利用 RxJS 以相同方式处理任何 Observable、Promises、Observable-like、array-like 等对象的事实,并编写以下内容:
const val1 = Observable.of(42);
const val2 = [42];
Observable.from(val1).subscribe(console.log);
Observable.from(val2).subscribe(console.log);
在这两种情况下,这将只打印 42
,即使我曾经使用一个具有单个值的 Observable,然后使用一个具有单个值的数组。
不,它没有,可能是因为它不是很有用。您需要它用于哪些用例?