From f29d5e258662e0c5c56fe4df7952d077098b8bd9 Mon Sep 17 00:00:00 2001 From: "magicdawn@qq.com" Date: Mon, 30 May 2016 16:15:34 +0800 Subject: [PATCH] boat: add doc --- README.md | 35 ++++++++++++++++++++++++++++++++++- package.json | 8 +++++++- 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c391dbe..40f840a 100644 --- a/README.md +++ b/README.md @@ -7,14 +7,47 @@ [![npm downloads](https://img.shields.io/npm/dm/sails-boat.svg?style=flat-square)](https://www.npmjs.com/package/sails-boat) [![npm license](https://img.shields.io/npm/l/sails-boat.svg?style=flat-square)](http://magicdawn.mit-license.org) +## Features + +- [x] `async/await` / `generator-function` support in `boat.action` +- [x] `boat.defaultErrorHandler` as error handle + ## Install ``` npm i sails-boat --save ``` ## API +```js +const boat = require('sails-boat'); ``` -const sailsBoat = require('sails-boat'); + + +### `boat.action` + +`boat.action(fn, errorHandler)` + +- fn: async function / generator-function / normal function, with `(req, res)` para +- errorHandler: defaults to `boat.defaultErrorHandler`, with `(req, res, err)` para + +```js +const boat = require('sails-boat'); +const sleep = require('promise.delay'); + +// api/controller/HelloController.js +module.exports = { + world: boat.action(function*(req, res){ + yield sleep(100); // sleep 100ms + var results = yield SomeModel.find(); + res.send(results); + }), + + foo: boat.action(async function(req, res){ + await sleep(100); + var results = await SomeModel.find(); + res.send(results); + }) +} ``` ## Changelog diff --git a/package.json b/package.json index d586639..25081b2 100644 --- a/package.json +++ b/package.json @@ -36,5 +36,11 @@ "mocha": "^2.4.5", "sails": "^0.12.3", "should": "^8.3.1" - } + }, + "files": [ + "index.js", + "package.json", + "README.md", + "LICENSE" + ] } \ No newline at end of file