Error : .map() is not a function
Error : .map() is not a function
正在尝试从组件订阅已解析的 HTTP - GET 响应。收到一条错误消息说 .map 不是一个函数,无论是从 HTTPService 还是从组件 class.
Httpdemo.getResponse().map(res => res.json()).subscribe((cities)=>{
this.cities = cities.cities;
console.log(this.cities);
});
但以下有效:
Httpdemo.getResponse().subscribe((cities)=>{
this.cities = JSON.parse(cities._body).cities;
console.log(this.cities);
});
解析在Httpdemo服务中也不起作用。
return this.http.get('./app/cities.json').map(res => res.json())
我的代码中这里的用法有什么问题?
您需要为 Observable 导入地图运算符,如下所述:
import 'rxjs/add/operator/map';
默认情况下,并非所有运算符都包括在内。
有关详细信息,请参阅此答案:
一般来说,如果您对 load/target 个别 Rxjs 运算符不感兴趣,我建议导入以下库。
使用,
import 'rxjs/Rx';
正在尝试从组件订阅已解析的 HTTP - GET 响应。收到一条错误消息说 .map 不是一个函数,无论是从 HTTPService 还是从组件 class.
Httpdemo.getResponse().map(res => res.json()).subscribe((cities)=>{
this.cities = cities.cities;
console.log(this.cities);
});
但以下有效:
Httpdemo.getResponse().subscribe((cities)=>{
this.cities = JSON.parse(cities._body).cities;
console.log(this.cities);
});
解析在Httpdemo服务中也不起作用。
return this.http.get('./app/cities.json').map(res => res.json())
我的代码中这里的用法有什么问题?
您需要为 Observable 导入地图运算符,如下所述:
import 'rxjs/add/operator/map';
默认情况下,并非所有运算符都包括在内。
有关详细信息,请参阅此答案:
一般来说,如果您对 load/target 个别 Rxjs 运算符不感兴趣,我建议导入以下库。
使用,
import 'rxjs/Rx';