在TypeScript中,Class有私有构造函数(),因此我们可以像下面这样轻松创建单吨模式类.
class Singleton {
static instance = new Singleton();
prop = 0;
private constructor() {}
}
Singleton.instance.prop; // 0
当我使用没有TSC的Babel构建此TypeScript代码时,引发错误Singleton不是构造函数.
我该怎么办?
最佳答案 我正在回答这个问题,因为在几个小时内没有其他答案.我没有直接回答问题,但它也可以是解决方案本身的答案.
在Node.js世界中,制作额外的单例是没有意义的.为什么?每个文件都是单独的单独文件.
如果你有这样的文件(模块):
class Singleton {
constructor() {}
}
exports.instance = new Singleton();
然后你只能访问实例,基本上是单例.实际上没有办法访问其他任何东西.