Typescript访问同一个类中的私有静态字段

时间:2015-03-31 13:09:28

标签: typescript

我想知道在同一个班级中访问私有静态字段的方式是什么,假设该类未被导出

module Test {
    class Template {
        private static ext = '.hbs';
        private static basePath = 'WebContent/templates/';
        private static templatesFolder = 'templates';
        private static partialsFolder = 'partials';
        private static paymentMethodsFolder = 'paymentMethods';

        public static template(templateName, data): string{
            return Handlebars.templates[Test.Template.basePath + this.templatesFolder + '/' + templateName + this.ext];
        }
    }
}

我不知道如何访问static template函数中的静态变量。我不想导出该类,因为我想封装逻辑,因此它无法从浏览器中使用。

去哪里的路?我从this开始,因为它起初并不是静止的,但我改变了主意,现在我陷入困境。

1 个答案:

答案 0 :(得分:2)

在这种情况下,您只需输入如下所示的类名(所以与现在相同,但没有模块名称(测试)

Handlebars.templates[Template.basePath + Template.templatesFolder + '/' + templateName + Template.ext];

您现在无法从模块外部访问public static template函数,因为它位于未导出的类中。

如果您将该功能移出模块中的类,而不是public static使其成为export function,您可以在模块外部调用它,它应该可以正常工作。