Awesome
mwa
😘 Middle Ware Async, easily create your own middleware layer. It's like koa's middleware.
Installation
$ npm install mwa
# or pnpm
$ pnpm add mwa
# or yarn
$ yarn add mwa
[!NOTE]
mwa
is an ESM-only package.
Usage
import mwa from 'mwa'
const app = mwa()
app.use(async (state, next) => {
console.log('mw1 start: ', state)
state.a = 1
await next()
console.log('mw1 end: ', state)
})
app.use(async (state, next) => {
console.log('mw2 start: ', state)
state.b = 1
await next()
console.log('mw2 end: ', state)
})
try {
await app.run({})
console.log('all completed')
} catch (err) {
console.error(err)
}
API
mwa()
Return a new Mwa instance.
Instance
.use(middleware)
Use the given middleware. Return the instance itself.
middleware
- Type:
async function
orasync function[]
- Details: middleware function.
.run(state)
Run all middlewares. Return a Promise.
state
- Type:
any
- Details: middleware context.
Contributing
- Fork it on GitHub!
- Clone the fork to your own machine.
- Checkout your feature branch:
git checkout -b my-awesome-feature
- Commit your changes to your own branch:
git commit -am 'Add some feature'
- Push your work back up to your fork:
git push -u origin my-awesome-feature
- Submit a Pull Request so that we can review your changes.
NOTE: Be sure to merge the latest from "upstream" before making a pull request!