promisificator
Returns a promise
and a callback
that will fulfill the promise
.
Examples
1. Use the callback in an async function to resolve the promise
const fs = ;const promisificator = ; const promise callback = ; //`callback` can be passed to any async function that takes a callbackfs; //`promise` will be fulfilled once the callback is calledpromise;
2. Allow a function to accept a callback or return a promise
const promisificator = ; { const promise callback = ; // `cb` will be wrapped in `process.nextTick` so it won't be // called immediately if it is a callback ; // if `cb` is a function `promise` will be undefined return promise;} ; ;
3. Turn a callback function into a promise
const fs = ;const promisify = ; //`promisify(fs.readFile)` will return a function that returns a promise"/etc/password";
Options
rejectOnError
Default: true
Reject the promise if the first argument of the callback is truthy.
alwaysReturnArray
Default: false
Resolve the promise with an array of values if there is only one argument.
By default Promisificator will return an array only if there is more than one non-error argument sent to the callback.
useNextTick
Default: true
If a callback is provided use process.nextTick
when calling the callback to ensure that it is called asynchronously.
If this is set to false
the callback can be called before the function returns, which might lead to unexpected results.
callbackArg
Default: -1
The argument index to place the callback for promisify
.
Negative values will be from the end of the function arguments. Positive values start at 0.