1.0.0 • Published 9 years ago

koa-generic-controller v1.0.0

Weekly downloads
2
License
MIT
Repository
github
Last release
9 years ago

koa-generic-controller

Generic controller implementation for Koa applications.

Installation

$ npm install koa-generic-controller --save

Usage

var koa = require('koa');
var Controller = require('koa-generic-controller');

class TestController extends Controller {
	configure () {
		// use some middleware
		this.use('beforeAll'); // execute before all methods
		this.use('beforeHello', { only: 'hello' }); // only before hello
		this.use('exceptHello', { except: 'hello' }); // before all except hello
	}
	
	* hello () {
		this.body = 'Hi';
	}
	
	* beforeAll (next) {
		// do something
		
		yield next;
	}
}

var app = koa();

app.use(function * (next) {
  var controller = new TestController(this); // pass context to controller

  yield controller.execute('hello');

  yield next;
});

app.listen(3000);

Tests

Circle CI

$ npm test

License

koa-generic-controller is released under the MIT license.