这是我的服务:
getComments(line: string, department: string, startTime?: number, endTime?: number): Observable<Array<IComments>> {
let headers = new Headers(
{
'Content-Type': 'application/x-www-form-urlencoded',
'line': line,
'cell': department,
'start': new Date(),
'end': ago(24, "hours")
});
let options = new RequestOptions({ headers: headers });
return this.http.get('api/data/comments', options)
.map(this.extractData)
.catch(this.handleError);
}
private extractData(res: Response) {
let body = res.json();
return body.data || {};
}
这就是我的组件包含的内容:
this.dataService.getComments('604', 'powders').forEach(result => {
console.log('Res: ' + JSON.stringify(result));
that.comments = result;
});
但是,我进入控制台的所有内容都是:
Res:{}
为什么没有返回数据,就像邮递员一样?
如果我在extractData中console.log(body)
,那么我得到:
对象{结果:&#34; COMMENTS604&#34;}
答案 0 :(得分:1)
在extractData
中,您将返回body.data
,但由于该属性的名称为result
,我认为您的意思是return body.result