2017-02-22 72 views
0

我创建了一个服务来获取从JSON角2服务筛选参数数组

getItem(id: string): Observable<any[]> { 
    return this.http.get('path/to/my.json') 
     .map((response) => { 
       let results: any = response.json(); 

       let filtered: any = results.filter((result) => { 
        return result.field === id; 
       })[0]; 

       return filtered; 
      } 
     ); 
} 

过滤后的结果现在我的参数(ID)不是一个字符串,而数组。我如何修改我的服务?目前,如果'id'是一个数组,它将从我的JSON中返回一个包含所有对象的数组。

回答

1

因此,假设它是一个字符串数组,并且字段应该包含在列表中,您可以检查该字段是否在列表中。

ids: string[]; 

results.filter((result) => { 
    return ids.indexOf(result.field) > -1; 
})