koa-interceptors
v0.1.5
Published
An Interceptors middleware for koa2
Downloads
4
Maintainers
Readme
koa-interceptors
An interceptors middleware for koa2
Introduction:
The interceptor automatically associates the router with the controller.
Usage
app.js
'use strict';
// modules
const koa = require('koa');
const convert = require('koa-convert');
const session = require('koa-session');
const Interceptors = require('koa-interceptors');
// app
const app = new koa();
// interceptors
const interceptors = new Interceptors();
// use session
interceptors.use(convert(session()));
// load routes
app.use(interceptors.routes());
/routers/home/login.js
'use strict';
module.exports = {
'/login': [
{
action: 'login' // page action
},
{
method: 'post', // if get can be omitted
action: 'validate-login' // page action
}
]
};
/controllers/home/login.js
'use strict';
module.exports = {
login: ctx=>{
// page action logic
},
'validate-login': ctx=>{
// page action logic
},
};
Install
$ npm install koa-interceptors --save
API
Interceptors([routers, controllers, options])
routers
: the routers base dir.controllers
: the controllers base dir.options
: the koa-router options.
Others see: koa-router
Notice
The interceptor will add a property routeData
on koa ctx.