npm install use-composeCompose use-* middlewares
=================================
Compose middlewares like fn(req, resp, next) into one.
Support async middleware which return promise.
js
const compose = require('use-compose');
const theone = compose([
async (req, resp, next)=>{
await sleep(1);
const result = await next()
await sleep(1);
return result;
},
(req, resp, next)=>{
return new Promise((resolve, reject)=>{
resolve(1)
})
}
])
//call the composed one
theone(req, resp).then(result=>assert.equal(result, 1));
`
API
compose(middlewares, options). options have:
* inheritProperties: the properties that will be passed to middlewares from the result composed function
* canRunMiddleware`: before invoking the specified middleware, check whether it can be run