单例模式是一种非常重要的模式,例如VueX状态管理就是使用这种模式,这次来演示typescript如何创建这种模式。

// !单例模式
class Demo {
  private static instance: Demo; //类型为这个类
  private constructor() {}
  // *static 会将它挂载类上,而不是实例上
  static getInstance() {
    if (!this.instance) {
      this.instance = new Demo();
    }
    return this.instance;
  }
}

// 外部无法直接new,因为constructor是private
const demo1 = Demo.getInstance();
Logo

前往低代码交流专区

更多推荐