tiny-onion

0.0.4 • Public • Published

About tiny-onion

tiny-onion is a basic class for build onion like object.

install this

For Mac

sudo npm install tiny-onion

For Windows

npm install tiny-onion

If U get some error like "Cannot find module 'tiny-onion'", see how to resolve the windows path;

How to use this

The first step, use the onion, you can create an beauty onion class.

var Onion = require('tiny-onion').Onion;
var MyOnion = Onion.extend({
  "name": "My-onion"
});

Now init MyOnion

var myOnion = new MyOnion({
  initOpt: "this is a init options"
});

Now use the middlewares

myOnion.use(function(arg0, next) {
  console.log(arg0);
  next({
    pushArg: 'this is a push arg'
  })
}).use(function (pushArg, arg0, next) {
  console.log(pushArg, arg0);
  next();
});

Now call handle with some options

myOnion.handle({
  "opt":"this is your options"
})({arg0:'this is arg0'});

If U want some event mode, just extend an object with property eventable and the make sure the value is true;

var MyEvtOnion = MyOnion.extend({
  eventable: true
});

Now you get a eventable onion object;

var myEvtOnion = new MyEvtOnion;
myEvtOnion.on("start", function(){
  console.log('now system start');
});
myEvtOnion.use(function (next) {
  myEvtOnion.emit('start');
  next();
}).use(function (next) {
  console.log('finished');
}).handle()();

Now enjoy it

Connect me

U can post an email or a issue at github

Thank you for install tiny-onion~

Readme

Keywords

none

Package Sidebar

Install

npm i tiny-onion

Weekly Downloads

0

Version

0.0.4

License

MIT

Last publish

Collaborators

  • lichenhao