Web services 地图不是一个函数

Web services 地图不是一个函数,web-services,angular,Web Services,Angular,我正在尝试建立一个网站,连接一个天气api,并获得一些关于给定城市当前天气的信息。当我在应用程序中查看网络流时,我确实收到了一个包含该信息的json,但我无法映射它并显示结果。错误i修订为: TypeError:response.json(…).map不是WeatherSearchComponent的函数。ts:138 在MapSubscriber.project(WeatherSearchComponent.ts:84) 在MapSubscriber._next(map.js:77) 在Map

我正在尝试建立一个网站,连接一个天气api,并获得一些关于给定城市当前天气的信息。当我在应用程序中查看网络流时,我确实收到了一个包含该信息的json,但我无法映射它并显示结果。错误i修订为:

TypeError:response.json(…).map不是WeatherSearchComponent的函数。ts:138
在MapSubscriber.project(WeatherSearchComponent.ts:84)
在MapSubscriber._next(map.js:77)
在MapSubscriber.Subscriber.next(Subscriber.js:89)
在XMLHttpRequest.onLoad(http.umd.js:1083)
在ZoneDelegate.invokeTask(zone.js:225)
在Object.onInvokeTask(core.umd.js:6004)
在ZoneDelegate.invokeTask(zone.js:224)
在Zone.runTask(Zone.js:125)
在XMLHttpRequest.ZoneTask.invoke(zone.js:293)
以下是部件:

导入{
组成部分,
可注射,
奥尼特,
ElementRef,
事件发射器,
注射
}从“@angular/core”开始;
从'@angular/Http'导入{Http,Response};
从“rxjs”导入{Observable};
进口“rxjs/Rx”;
导入'rxjs/add/operator/map';
导出var WEATHER_API_KEY:string='API_KEY';
导出变量天气\u API\u URL:string=http://api.openweathermap.org/data/2.5/weather';
导出变量GDANSK_ID:string='3099434';
/*让加载gif:string=((

` }) 导出类SearchResultComponent{ 结果:SearchResult; } @组成部分({ 选择器:'天气搜索', 模板:` 天气搜寻 ` }) 导出类WeatherSearchComponent{ 结果:SearchResult[]; 更新结果(结果:SearchResult[]):无效{ 这个结果=结果; //console.log(“results:,this.results);//取消注释以查看 } }
这是我从api调用中得到的结果:

/*
{“坐标”:{“lon”:18.65,“lat”:54.35},
“天气”:[{“id”:801,“主要”:“云”,
“说明”:“少云”,“图标”:“02n”}],“基站”:“基站”,
“主要”:{“温度”:270.15,“压力”:1035,“湿度”:92,
“最低温度”:270.15,“最高温度”:270.15},“能见度”:10000,
“风”:{“速度”:2.1,“度”:290},“云”:{“全部”:20},
“dt”:1484665200,
“sys”:{“type”:1,“id”:5349,“message”:0.0029,
“国家”:“PL”,“日出”:1484636080,“日落”:1484665040}
id:3099434,“姓名”:“格但斯克”,“鳕鱼”:200}
*/

您的问题不清楚您是在变量上还是在可观察对象上尝试
.map()

场景#1:
variable.map()

变量
必须是数组。从代码中可以看出变量包含对象

const jsonData={
“坐标”:{“lon”:18.65,“lat”:54.35},
//为简洁而删节。。。
id:3099434,“姓名”:“格但斯克”,“化学需氧量”:200
};
jsonData.map(…);//不起作用-`jsonData`必须是数组
场景#2:
observable.map()

映射之前,必须在代码中导入
map
运算符:

导入'rxjs/add/operator/map';
//然后,以后
可观察地图(…);

当我尝试console.log(“getRequest”,getRequest)时,我承认我在任何地方都找不到这个Json。那么我该怎么办?在console.log(“getRequest”,getRequest)上,它说它是一个可观察的。我还导入了“rxjs/add/operator/map”。那么我该如何映射可观察的?这让人困惑……你说错误是
response.Json(…).map不是函数
。map错误不在可观察对象上,而是在可观察对象返回的数据上。我只想打印api调用返回的Json,你说得对。错误不在可观察对象上。我现在该怎么办?