Seneca Promise
- Node: 8.x
- Seneca: 2.x - 3.x
This plugin adds a series of methods to the seneca
instance that allow for
promises and async/await. For lots of examples, refer to the tests.
If you're using this module, and need help, you can:
- Post a github issue,
If you are new to Seneca in general, please take a look at senecajs.org. We have everything from tutorials to sample apps to help get you up and running quickly.
Install
npm install seneca-promise
Quick Example
const seneca = senecaseneca
Usage with TypeScript
npm i -D typescript @types/seneca
By requiring seneca-promise
the seneca Instance
type will be modified to include addAsync
, actAsync
, wrapAsync
and priorAsync
. You must still use
this plugin for the functions to show up properly on the seneca instance!
seneca.useSenecaPromiseseneca.addAsync // huzzah!
Each method takes the following generic type parameters:
- Action - first parameter (jsonic) provided to the functions
- Params - second parameter (object) provided to the functions
- Response - type of the response (includes both action & params)
The action and params are somewhat exchangable the same way the following are equivelent in seneca using js:
senecasenecaseneca
For a full example, refer to the test file
API
-
addAsync Same as
add
but allow you to return a promise. -
wrapAsync Same as
wrap
but allows you to return a promise -
priorAsync Same as
prior
but allows you to return a promise. -
actAsync Same as
act
but returns a promise.