如何导出typescript类但保持关联var私有

时间:2018-03-08 17:34:34

标签: typescript tsc

想象一下这个例子:

const hidden = Symbol()

export class Foo {
  static [hidden] = 'I dont want another touch this'
}

编译器报告:错误TS4028:公共静态属性' [隐藏]'导出的类已经或正在使用私人名称' hidden'。

是的,我知道'隐藏'是私人的。我只是不想出口它。

有没有办法抑制这个错误?

1 个答案:

答案 0 :(得分:2)

如果您使用--declaration declaration files发出compiler option,这只是一个问题。如果你不关心发出声明文件,那么禁用该选项,错误应该消失。

如果你想要发出一个声明文件,那么就会有一个实验编译器选项--stripInternal,它不会为任何用/** @internal */注释的代码发出声明。示例:

const hidden = Symbol()

export class Foo {
    /** @internal */
    static [hidden] = 'I dont want another touch this'
}

这应该可以消除错误。这对你有用吗?