Bün*_*gül 4 javascript rest json angular
我有一个名为Condition的类:
export class Condition{
name: string;
date: string;
link: string;
}
Run Code Online (Sandbox Code Playgroud)
还有一个名为search的函数,它发出 http get 请求:
public search(params: string): Observable<json[]> {
let queryString = this.serverUrl + params;
return this.http.get(queryString)
.map((res:Response) => res.json())
.catch((error:any) => Observable.throw(error.json().error || 'Server error'));
}
Run Code Online (Sandbox Code Playgroud)
我得到一个对象,从中获取具有特定属性的条件。它的入口属性中绝对有一个对象数组:
this.search(`Condition?patient=Patient/107795`).subscribe(data => {
var conditionArray = data.entry; // data.entry is absolutely an ARRAY
for(var condition of conditionArray){
conditions.push({ //conditions is a Condition[]
name: condition.resource.code.coding[0].display,
date: condition.resource.dateRecorded,
link: "condition/" + condition.resource.id
});
}
} , err => { console.log(err); } );
Run Code Online (Sandbox Code Playgroud)
在使用启动脚本编写这些代码之前,我开始了这些项目:
"scripts": {
"start": "tsc && concurrently \"npm run tsc:w\" \"npm run lite\" ",
Run Code Online (Sandbox Code Playgroud)
该项目按我的意愿运行,控制台上没有错误。但是,当我停止它并使用启动脚本重新启动时,它会出现以下错误:
error TS2339: Property 'entry' does not exist on type 'any[]'.
Run Code Online (Sandbox Code Playgroud)
你知道它有什么问题吗,我该如何解决?
您的search
方法可能应该返回一个对象,而不是一个数组。声明如下:
public search(params: string): Observable<any> {
Run Code Online (Sandbox Code Playgroud)
any
除非您有描述结果的类型,否则请使用,如果是,则可以改用它。
归档时间: |
|
查看次数: |
14115 次 |
最近记录: |