0

谁能指导我解决这个问题。

我正在尝试访问地图运算符中 json 响应的内部属性。

return this.http.get('http://localhost:3000/api/businesses', options)
  .map((response: Response) => response.json());

这将返回整个响应,但我需要获得该响应的商业属性。

我的 API 端点像这样返回 json 对象

{
   sucesses:true,
   business:[
     {},
     {}
   ]
}

所以我需要访问这个对象并只返回业务数组

4

1 回答 1

3

通过调用response.json()您可以返回一个可以查询的对象。

考虑到您的响应,您应该得到一个具有两个属性的对象,即成功和业务。因此,您可以只映射 observable 并返回该属性。

return this.http
  .get('http://localhost:3000/api/businesses', options)
  .map((response: Response) => response.json())
  .map((data: { success: boolean, business: any }) => data.business);

这将返回 json 响应的属性业务。

于 2018-02-05T23:08:39.987 回答