如果未实现抽象方法,如何在IDE会抱怨的类中正确定义抽象方法?

时间:2018-08-27 13:30:45

标签: javascript typescript

如何在抽象类中正确定义抽象方法?我希望IDE告诉我必须实现该抽象方法。

我尝试了以下操作,但没有成功:

export abstract class MyAbstractClass {

   /**
    * @abstract
    */
   public submit() {
      throw new Error('This class must be implemented')
   }
}
  

问题是:如果您不这样做,我们如何使IDE抱怨   实现抽象方法?

1 个答案:

答案 0 :(得分:2)

尝试一下:

export abstract class MyAbstractClass {
   // we shouldn't declare the body of abstract method
   abstract submit(): void;
}

//...

class MyClass extends MyAbstractClass {
}

您将看到ide抱怨: enter image description here

在示例中您正在做的事情-是针对emulating abstract classes的著名的ES6黑客。但是TypeScript开箱即用地支持抽象类。有关更多详细信息,您可以检查official documentation on classes

还创建了stackblitz demo,您可以签出。