Skip to content

conglai/cl-router

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A Simple Koa Router

NPM version NPM downloads Build Status Coverage Status MIT License

Install

NodeJS >= 4.6.0

~ npm install cl-router

It's an better idea use this module with clmloader

Example

const middlewareMap = {
  'pre': {
    middlewares: [function*(next){
      this.num = this.num ? this.num + 1: 1;
      console.log('pre before next');
      yield next;
      console.log('pre before next');
    }]
  },
  'preA': {
    middlewares: [function*(next){
      this.num = 1;
      console.log('preA before next');
      yield next;
      console.log('preA after next');
    }]
  },
};
const routerMap = {
  'i': {
    error: {
      middlewares: ['pre', 'preA',function*(next){
        this.num += 1;
        console.log('error before next');
        yield next;
        console.log('error after next');
      }]
    }
  }
};
const routerM = routerFunc({
  middlewareMap: middlewareMap,
  routerMap: routerMap,
  defaultRouter: ['i', 'error']
});

const koa = require('koa');
const app = koa();

app.use(routerM);
app.listen(8080);

If you visit http://localhost:8080/i/error, console should output like this:

pre before next
preA before next
error before next
error after next
preA after next
pre before next

Releases

No releases published

Packages

No packages published