0.1.1 • Published 7 years ago
autoinject-ts v0.1.1
autoinject-ts
Dependency Injection Container for TypeScript with minimal configuration
Usage
You only need to annotate classes with dependencies
Classes.ts
import {autoinject} from 'autoinject-ts';
// no constructor -> no annotation
export class A {
public who = 'world';
}
@autoinject()
export class B {
constructor(public a: A) {}
hello() {
console.log('Hello ' + this.a.who + '!')
}
}
container.ts
import {Container} from 'autoinject-ts';
const container = new Container();
export {
container,
};
index.ts
import {container} from './container';
import {B} from './Classes';
const b = container.get<B>(B);
b.hello();
// output: "Hello world!"
API
Methods
- get\(type: Class\): T
- set\(type: Class\, instance: T): void
- setFactory\(type: Class\, factory: () => T): void