Skip to content

zce/mwa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

87 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mwa

Build Status Coverage Status License NPM Downloads NPM Version Dependency Status devDependency Status Code Style

😘 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 or async function[]
  • Details: middleware function.

.run(state)

Run all middlewares. Return a Promise.

state
  • Type: any
  • Details: middleware context.

Contributing

  1. Fork it on GitHub!
  2. Clone the fork to your own machine.
  3. Checkout your feature branch: git checkout -b my-awesome-feature
  4. Commit your changes to your own branch: git commit -am 'Add some feature'
  5. Push your work back up to your fork: git push -u origin my-awesome-feature
  6. 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!

License

MIT © zce

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published