promisify-call
Promisify a function call so users can call a function with a callback or get a promise.
- 2.0 works only with native
Promise
so requires Node >= 4.0. - 1.0 uses Bluebird and should work with older Node.js
Installation
npm install promisify-call
Usage
function _uppercase(param, fn) {
setTimeout(() => {
return fn(null, param.toUpperCase());
}, 50);
}
function uppercase(param, fn) {
return promisifyCall(this, _uppercase, ...arguments);
}
uppercase('foo', (err, res) => {
console.log(res);
});
const res = await uppercase('foo');
console.log(res);
API Reference
promisifyCall(ctx, fn, args) ⇒ undefined
| *
| Promise
Promisifies the call to fn
if appropriate given the arguments.
Calls the function fn
either using callback style if last argument is a function.
If last argument is not a function, fn
is called returning a promise.
This lets you create API that can be called in either fashions.
Kind: global function
Returns: undefined
| *
| Promise
- Promise if promisified
Param | Type | Description |
---|
ctx | Object | context / this |
fn | function | The function to call |
args | arguments | Arguments |
License
Copyright 2015 Bojan D.
Licensed under the MIT License.