内在可观察物

时间:2018-08-23 16:21:32

标签: rxjs observable

我一直在使用Observables,但无法弄清楚如何做:

  1. 我有一个观察对象,它发出一个ID数组。
  2. 然后我想再次使用Observables检索这些ID。
  3. 最后,我想将所有内容放在一起 发出检索到的项目的数组。

我可以将代码尝试放在这里,但是我认为这不会有太大帮助。 我正在使用RxJS 5.5

1 个答案:

答案 0 :(得分:1)

您可以为此flattening operators使用它(例如mergeMapconcatMap,具体取决于要求)。例如:

const { Observable, combineLatest, of, from } = rxjs; // = require("rxjs")
const { mergeMap, toArray, map } = rxjs.operators; // = require("rxjs/operators")

const ids = [0,1,2,3,4,5,6,7,8,9];
const transform = id => of(`${id}-transformed`);

of(ids).pipe(
  mergeMap(ids => ids),
  mergeMap(id => transform(id)),
  toArray()
).subscribe(e => console.log(e))
<script src="https://unpkg.com/rxjs@6.2.2/bundles/rxjs.umd.min.js"></script>