我有一个TypeScript单例类
class MySingleton {
private static _instance: MySingleton;
private constructor();
public static getInstance() {
if (!MySingleton._instance) {
MySingleton._instance = new MySingleton();
}
return MySingleton._instance;
}
}
Run Code Online (Sandbox Code Playgroud)
现在,我想在创建这个单例实例时传递一些选项.
例如,将实例的模式设置为生产模式的选项.
因此,可以通过getInstance接受传播到构造函数的选项对象来实现.然后使用变得像
MySingleton.getInstance({
prodMode: true
});
Run Code Online (Sandbox Code Playgroud)
这是最好的方法吗?这样做有点蠢,因为当通过传递选项对象MySingleton执行的消费者时getInstance,他或她无法知道传递的选项对象将被使用或被忽略.
javascript singleton design-patterns javascript-objects typescript