true-di
![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)
Simple Dependency Injection Container for TypeScript and Javascript
Installation
npm i --save true-di
Usage
import diContainer from 'true-di';
import { ILogger, IDataSourceService, IECommerceService } from './interface';
import Logger from './Logger';
import DataSourceService from './DataSourceService';
import ECommerceService from './ECommerceService';
export interface IContainer {
logger: ILogger,
dataSourceService: IDataSource,
ecommerceService: ICommerceService,
}
const container = diContainer<IContainer>({
logger: () => new Logger(),
dataService: ({ logger }) => new DataSourceService(logger),
ecommerceService: ({ logger, dataSource }) => new ECommerceService(logger, dataSource),
});
export default container;