1.0.8 • Published 2 years ago

@secjs/ioc v1.0.8

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

IoC Container 📦

Very simple IoC container for NodeJS

GitHub followers GitHub stars

The intention behind this repository is to always maintain a viable and simple IoC to use in any type of NodeJS applications, with or without Frameworks

Installation

npm install @secjs/ioc

Usage

Set

Container can register dependencies for you, every container.get will create a new instance for UserService.

import { Container } from '@SecJS/IoC'
import { UserService } from 'app/Services/UserService'

const container = new Container()

container.set(UserService)
const userService = container.get<UserService>('UserService', 'props', 'to', 'UserService Constructor here')

console.log(userService.findAll())

Singleton

Container can register singleton dependencies, when singleton container.get will return the same UserService instance all time.

import { Container } from '@SecJS/IoC'
import { UserService } from 'app/Services/UserService'

const container = new Container()

container.singleton(UserService, 'props', 'to', 'UserService Constructor here')
const userService = container.get<UserService>('UserService')

console.log(userService.findAll())

Singleton can register static objects and arrays too, but for arrays and objects the name is required:

container.singleton([], 'myArray')
container.singleton({}, 'myObject')

console.log(container.get('myArray')) // []
console.log(container.get('myObject')) // {}

License

Made with 🖤 by jlenon7 :wave:

1.0.8

2 years ago

1.0.7

2 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago