我目前正在尝试角2与离子2相结合,所以我对打字有点陌生。基本上我是在实现一个restservice,我想把rest类抽象化。

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 "";
   }}

但是我总是在“导出类restservicejourney extends restservice”行中得到一个类型“any”不是构造函数函数类型错误。我搜索了google和stackoverflow,不知道这是什么样的错误。(我在stackoverflow上找到了一个,但那个版本有问题。)
提前谢谢!

最佳答案

导入抽象类时出错。
我写道:从“restservice”导入{restservice};
但必须:从“./restservice”导入{restservice};

10-04 15:23