Skip to content

Instantly share code, notes, and snippets.

@chrismllr
Created July 5, 2017 14:40
Show Gist options
  • Save chrismllr/e6b4ba24ee7bc8b26c417d7380a13dd1 to your computer and use it in GitHub Desktop.
Save chrismllr/e6b4ba24ee7bc8b26c417d7380a13dd1 to your computer and use it in GitHub Desktop.
const dependencies = new Map();
export class Container {
static resolve(Class) {
const deps = dependencies.get(Class);
return new Class(...deps);
}
static registerDependencies(Class, deps) {
dependencies.set(Class, deps);
}
}
export function Inject(...deps) {
return function decorator(Class) {
Container.registerDependencies(Class, deps);
};
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment