https://github.com/minsithu/macro-injector
a dependency injection library
https://github.com/minsithu/macro-injector
Last synced: 3 months ago
JSON representation
a dependency injection library
- Host: GitHub
- URL: https://github.com/minsithu/macro-injector
- Owner: MinSiThu
- License: mit
- Created: 2019-10-01T15:26:55.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-10-01T15:53:03.000Z (over 5 years ago)
- Last Synced: 2025-02-16T19:41:45.222Z (3 months ago)
- Language: JavaScript
- Size: 4.88 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# super-injector
a dependency injection library## Sample Code
```javascript
// Simple Example
let MacroInjector = require("macro-injector");
let macroInjector = new MacroInjector();macroInjector.addDependency("User",class{
constructor(name,age){
this.name = name;
this.age = age;
}log(){
console.log(`${this.name} is ${this.age} years old!`)
}
})class UserService{
setUser(name,age){
this.user = new this.injections.User(name,age);
}render(){
this.user.log();
}
}let injectedUserService = macroInjector.inject(UserService,"User");
injectedUserService.setUser("The Creator of Super-Injector",19)
injectedUserService.render();console.log(macroInjector.dependencies())
```### Removing Dependency
```javascript
macroInjector.removeDependency("User");
```## Middleware
```javascript
macroInjector.applyMiddleware("User",function(){
console.log("Before Injecting User");
})
```## Error Event
```javascript
let macroInjector = new MacroInjector();
macroInjector.on("error",message=>{
console.log(message);
})
macroInjector.addDependency("User","User String can't be injected");
```