在TypeScript中访问默认无名类中的静态属性

时间:2016-09-18 20:17:42

标签: typescript

如果我定义这样的类(在名为.MyClass.ts的文件中)

export default class {
    static someProperty = 1;

    someMethod() {
       var a = ????.someProperty
    }

}

如何访问someProperty。 显然,使用this.someProperty不起作用。也不能使用名称。如果它是一个命名类,可以通过SomeClassName.someProperty访问它。

如果我将模块加载到另一个文件中。我可以通过以下方式访问它:

MyClass.someProperty

2 个答案:

答案 0 :(得分:2)

您在此处使用匿名类表达式。我可能错了,但我相信命名类表达式是您访问该变量的唯一方法。

 export default class ClassName {
    static someProperty = 1;

    someMethod() {
        return ClassName.someProperty;
    }

}

您的消费者仍然可以按照他们想要的名称命名该类(前面的例子中的MyClass)

答案 1 :(得分:0)

您可以使用

this.constructor.someProperty