【发布时间】:2017-09-30 12:55:52
【问题描述】:
由于我真的不明白那个错误,我无法构建我的 Angular4 项目。我有来自@angular 的响应、标头、Http 之类的导入。当我尝试构建我的项目时,出现此错误:
TS2453:无法从用法推断类型参数“T”的类型参数。考虑明确指定类型参数。 类型参数候选“响应”不是有效的类型参数,因为它不是候选“响应”的超类型。 属性“类型”的类型不兼容。 类型“字符串”不可分配给类型“响应类型”。
指的是这段代码:
public getPatients(): Observable<any> {
//noinspection TypeScriptValidateTypes
return this.http.get(AppSettings.API_ENDPOINT + 'patient', { headers: this.getHeaders() })
.map((res:Response) => res.json())
.catch((error) => Observable.throw(error.json().error || "Server error"));
}
我找到了一种导入的解决方法,并添加了这些线程中提到的所有内容,但它仍然没有帮助。
【问题讨论】:
-
您能否拆分您的 return 语句,为
http.get().map()引入一个变量,并告诉我们哪一行产生了错误?我怀疑catch()的返回值的推断类型。
标签: angular typescript