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,然后使用一个具有单个值的数组。

观看现场演示:https://jsbin.com/fubobon/3/edit?js,console

不,它没有,可能是因为它不是很有用。您需要它用于哪些用例?