在一个类打字稿中扩展和实现

时间:2015-03-30 00:05:37

标签: typescript extends implements

我可以在打字稿上这样做吗?

export interface IMyInterface {
    doSomething():void;
}

export class MyBaseClass {
    myBaseClassHasProperty:string;

    constructor(){
      this.myBaseClassHasProperty = 'some value';
    }
    myBaseClassHasMethods():void{
      console.log(this.myBaseClassHasProperty);
    }
}

export class MyClass extends MyBaseClass implements IMyInterface {
    constructor(){
      super();
    }

    doSomething():void{
      this.myBaseClassHasMethods();
    }
}

在运行时我得到这个

未捕获的ReferenceError:未定义MyBaseClass

1 个答案:

答案 0 :(得分:15)

  

在运行时我得到这个Uncaught ReferenceError: MyBaseClass is not defined

是的,你可以这样做。您发布的代码将正常工作。

但是,我怀疑在您的实际代码中,您在MyBaseClass的代码之前将其拆分为多个文件并且MyClass 未执行

修复JavaScript排序或使用外部模块以使模块加载器确定排序。