typescript ServiceContainer.ts

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了typescript ServiceContainer.ts相关的知识,希望对你有一定的参考价值。

import UnknownServiceError = require('./error/UnknownServiceError');
import clone = require('../../function/clone');
import HashMapInterface from '../../interface/HashMapInterface';

class ServiceContainer {
  private serviceMap: HashMapInterface<any> = {};

  public set<S extends Object>(serviceName: string, service: S): void {
    this.serviceMap[serviceName] = service;
  }

  public get<S extends Object>(serviceName: string): S|never {
    const service = this.serviceMap[serviceName];

    if (service === undefined) {
      throw new UnknownServiceError(serviceName);
    }

    return clone<S>(service);
  }
}

export default ServiceContainer;

以上是关于typescript ServiceContainer.ts的主要内容,如果未能解决你的问题,请参考以下文章