Instance.ts 403 B

12345678910111213141516171819
  1. /**单例
  2. *
  3. * public static getInstance(): XXX{
  4. return Instance.get(XXX);
  5. }
  6. */
  7. export type IClazz<T> = new (...param: any[]) => T;
  8. export default class Instance {
  9. public static get<T>(clazz: IClazz<T>, ...param: any[]): T {
  10. if (clazz["__Instance__"] == null) {
  11. clazz["__Instance__"] = new clazz(...param);
  12. }
  13. return clazz["__Instance__"];
  14. }
  15. }