1.1.8 • Published 11 years ago
kantaina v1.1.8
kantaina
Wonderful asynchronous DI container based on promises.
Usage
kantaina = require "kantaina"
w = require "when"
# create container
container = kantaina()
# define scalar value
container.set "a", 1
# define sync factory
container.set "b", (a) ->
a + 1
# define async factory
container.set "c", (a, b) ->
deffered = w.defer()
setTimeout ->
deffered.resolve a + b
, 1000
deffered.promise
# receive value resolved by async factory
container.get("c").then (value) ->
# writes "3" after one second
console.log value
# wrap function and inject dependencies
wrapped = container.inject (a, b, c) ->
a + b + c
# wrapped function returns promise
wrapped().then (value) ->
# writes "6" immediately because "c" already resolved
console.log value
1.1.8
11 years ago
1.1.7
11 years ago
1.1.6
11 years ago
1.1.5
11 years ago
1.1.4
11 years ago
1.1.3
11 years ago
1.1.2
11 years ago
1.1.1
11 years ago
1.1.0
11 years ago
1.0.0
11 years ago
0.1.7
11 years ago
0.1.6
11 years ago
0.1.5
11 years ago
0.1.4
11 years ago
0.1.3
11 years ago
0.1.2
11 years ago
0.1.1
11 years ago
0.1.0
11 years ago