如何导出typescript类但保持关联变量私有
想象一下这个例子:如何导出typescript类但保持关联变量私有,typescript,tsc,Typescript,Tsc,想象一下这个例子: const hidden = Symbol() export class Foo { static [hidden] = 'I dont want another touch this' } 编译器报告:错误TS4028:导出类的公共静态属性“[hidden]”具有或正在使用私有名称“hidden” 是的,我知道“隐藏”是私人的。我只是不想出口 有没有办法抑制此错误?只有在使用--声明发出时,这才是问题。如果您不关心发出声明文件,那么禁用该选项,错误就会消失 如果您确
const hidden = Symbol()
export class Foo {
static [hidden] = 'I dont want another touch this'
}
编译器报告:错误TS4028:导出类的公共静态属性“[hidden]”具有或正在使用私有名称“hidden”
是的,我知道“隐藏”是私人的。我只是不想出口
有没有办法抑制此错误?只有在使用
--声明发出时,这才是问题。如果您不关心发出声明文件,那么禁用该选项,错误就会消失
如果您确实希望发出声明文件,那么有一个实验性的编译器选项,--stripInternal
,它不会为任何带有/**@internal*/
注释的代码发出声明。例如:
const hidden = Symbol()
export class Foo {
/** @internal */
static [hidden] = 'I dont want another touch this'
}
这应该可以消除错误。这对您有效吗?只有在您使用--声明发出时,这才是一个问题。如果您不关心发出声明文件,那么禁用该选项,错误就会消失
如果您确实希望发出声明文件,那么有一个实验性的编译器选项,--stripInternal
,它不会为任何带有/**@internal*/
注释的代码发出声明。例如:
const hidden = Symbol()
export class Foo {
/** @internal */
static [hidden] = 'I dont want another touch this'
}
这应该可以消除错误。这对你有用吗?很高兴了解stripInternal
。或者,如果您不想公开它,也许可以将其作为模块局部变量保留?很高兴了解stripInternal
。或者,如果您不想公开它,也许可以将它作为模块局部变量保留?