Package Exports
- promisify-call
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (promisify-call) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
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);
}
// now we can call it using callback-style
uppercase('foo', (err, res) => {
console.log(res); // FOO
});
// OR promise style
const res = await uppercase('foo');
console.log(res); // FOO
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.