2017-04-19 28 views
0

私は、項目が含まれているが運がないカテゴリの配列を持つことを試みています。 、{}:angular - rxjs観測可能な配列

public getItemsAndSubcategoriesFromCatAndCategory(catalogue_key: string, category_key: string): Observable<any> { 
     return this.categoriesService.getSubCategories(catalogue_key, category_key) 
      .combineAll() 
      .switchMap((val) => { 
       const obj = {}; 
       this.getItemsInSubcategory(catalogue_key, val[0].key).map((items) => { 
        obj[val[0].key] = items; 
       }); 
       return obj; 
      }); 
    } 

エラーがある:タイプの

引数は(ヴァル:{})=> {}は タイプ(値のパラメータに割り当てない これはコードでありますindex:number)=> ObservableInput < {}>

任意のアイデア?

+0

あなたのデータのルックスが行う方法を追加することができます

ので、代わりに

return obj 

EDITの

return Observable.of(obj) 

を使用'getSubCategories'のような結果、a nd 'getItemsInSubcategory'? –

答えて

0

.switchMap{}の代わりに返されるObservableが必要です。

あなたはより宣言構文で書くことができます:

.switchMap(([firstValue]) => Observable.of(
    this.getItemsInSubcategory(catalogue_key, firstValue.key) 
    .reduce((obj, items) => Object.assign({}, obj, { 
     [firstValue.key]: items 
    }, {}) 
)) 
関連する問題