2017-07-01 5 views
1

RxJSでは、ある点にある配列を配列内の項目のシーケンスに変換したいと思います。私はそれを行うには、2つの方法が見つかりました:オプション1 & 2、私は推測し、同じことを実行します。配列をflatMapの項目のシーケンスに変換する

const obj = { array: [1, 2, 3, 4, 5] }; 

const observable = Observable.of(obj); 

// Option 1 
observable.flatMap(x => { 
    return Observable.from(x.array); 
}).subscribe(console.log); 

// Option 2 
observable.flatMap(x => x.array).subscribe(console.log); 

// Option 3 ? 

は私がflatMapオペレータなしを意味し、私がやっている表現がよりよい/より良い方法はありますか?

答えて

1

私はあなたができる限り最短の方法で到達したと思います。 https://jsbin.com/zosonil/edit?js,console

const obj = { array: [1, 2, 3, 4, 5] }; 
const observable = Observable.of(obj); 

observable 
    .pluck('array') 
    .concatAll() // or mergeAll() 
    .subscribe(console.log); 

はライブデモを参照してください:私が提案するかもしれない唯一の改善は、すべてのコールバック関数を使用しないようです

関連する問題