Angular2服务没有';t将结果从http.get返回到Observable组件
我正在尝试使用get设置angular2中的视图。 A有一个组件和一个服务 在模板中,我有一个seachbutton,它在组件上启动搜索功能Angular2服务没有';t将结果从http.get返回到Observable组件,angular,rxjs,observable,Angular,Rxjs,Observable,我正在尝试使用get设置angular2中的视图。 A有一个组件和一个服务 在模板中,我有一个seachbutton,它在组件上启动搜索功能 //component searchResult : SearchData[]; searchData(){ this.search.geSearchResultPart1(this.form.searchterm) .subscribe( searchresult => {
//component
searchResult : SearchData[];
searchData(){
this.search.geSearchResultPart1(this.form.searchterm)
.subscribe(
searchresult => {
this.searchResult = searchresult
console.log( searchresult ); // undefined
},
err => {
console.log(err);
});
}
在我的服务中
getSearchResultPart1(searchWord : string) : Observable<SearchData[]> {
let fullURL = 'url=http://domain.nl/searchData.php?q='+searchWord;
return this.http.get(fullURL)
.map((res: Response) => {
res.json().data as SearchData[]
console.log(res.json()); // Shows an array with objects
})
.catch((error:any) => Observable.throw(error.json().error || 'Server error'));
}
该服务在console.log上显示响应,但不返回数据。
我搜索并跟踪了多个TUT,但没有结果。我想我是在做这件事,但是忘记了一件小事,但我不知道是什么。如果将
=>
与{}
一起使用,则需要显式返回
return this.http.get(fullURL)
.map((res: Response) => {
res.json().data as SearchData[]
console.log(res.json()); // Shows an array with objects
return res.json();
})
如果将
=>
与{}
一起使用,则需要显式返回
return this.http.get(fullURL)
.map((res: Response) => {
res.json().data as SearchData[]
console.log(res.json()); // Shows an array with objects
return res.json();
})
谢谢,首先我写了它,但它没有在组件上工作。所以我添加了日志来检查响应,但忘记了响应。我会在2分钟内接受你的回答。谢谢,首先我写了它,但它没有在组件上工作。所以我添加了日志来检查响应,但忘记了响应。我会在2分钟内接受你的回答。