我想知道在同一个班级中访问私有静态字段的方式是什么,假设该类未被导出。
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
开始,因为它起初并不是静止的,但我改变了主意,现在我陷入困境。
答案 0 :(得分:2)
在这种情况下,您只需输入如下所示的类名(所以与现在相同,但没有模块名称(测试)
Handlebars.templates[Template.basePath + Template.templatesFolder + '/' + templateName + Template.ext];
您现在无法从模块外部访问public static template
函数,因为它位于未导出的类中。
如果您将该功能移出模块中的类,而不是public static
使其成为export function
,您可以在模块外部调用它,它应该可以正常工作。