打字稿错误:键入' any'不是构造函数类型

时间:2016-10-21 06:07:34

标签: angular typescript

我目前正在尝试将Angular 2与Ionic 2结合使用,所以我对TypeScript有点新意。基本上我正在实现一个RESTService,我想让Rest Class抽象化。

export abstract class RESTService{

   mHttp: Http;
   mParameters: Parameter[];
   mURL: string;

   constructor (private http: Http, private parameters: Parameter[]){
       this.mHttp = http;
       this.mParameters = parameters;
   }

   // URL of the Rest Service
   abstract getURL() : string;

   // Convert or handle the Response
   handleResponse(rawResponse: Response){
       let body = rawResponse.json();
       return body.data || { };
   }

   // Handle an error 
   abstract handleError(error: any);

   // Do the rest call
   makeCall(): Observable<any> {
       return this.mHttp.get(this.mURL).map(this.handleResponse).catch(this.handleError);
   }}

这是从RESTService扩展的类:

export class RESTServiceJourney extends RESTService{

   constructor(http:Http, parameters:Parameter[]){
       super(http, parameters);
   }

   // URL of the Rest Service
   getURL() : string {
        return "";
   }

   // Convert or handle the Response
   private handleResponse(rawResponse: Response){
       return "";
   }

   // Handle an error 
   private handleError(error: any){
       return "";
   }}

但我总是得到 类型&#39;任何&#39;在行#34; 导出类时,不是构造函数类型 错误.RESTServiceJourney扩展了RESTService &#34;。我搜索了谷歌和Stackoverflow,不知道这是什么样的错误。 (我在Stackoverflow上找到了一个,但是那个版本有问题。)

提前致谢!

1 个答案:

答案 0 :(得分:3)

导入抽象类时我犯了一个错误。

我写道:从'restService'导入{RESTService};

但不得不:从'./restService'导入{RESTService};