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的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript入门五:TypeScript的接口

TypeScript系列教程--初探TypeScript

TypeScript入门三:TypeScript函数类型

typescript使用 TypeScript 开发 Vue 组件

认识 TypeScript

Learining TypeScript TypeScript 简介