????JFIF??x?x????'
| Server IP : 104.21.30.238 / Your IP : 216.73.216.145 Web Server : LiteSpeed System : Linux premium151.web-hosting.com 4.18.0-553.44.1.lve.el8.x86_64 #1 SMP Thu Mar 13 14:29:12 UTC 2025 x86_64 User : tempvsty ( 647) PHP Version : 8.0.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /proc/thread-self/root/././usr/lib/node_modules/npm/node_modules/es6-promisify/ |
Upload File : |
[](https://travis-ci.org/digitaldesignlabs/es6-promisify)
# es6-promisify
Converts callback-based functions to Promise-based functions.
## Install
Install with [npm](https://npmjs.org/package/es6-promisify)
```bash
npm install --save es6-promisify
```
## Example
```js
"use strict";
// Declare variables
const promisify = require("es6-promisify");
const fs = require("fs");
// Convert the stat function
const stat = promisify(fs.stat);
// Now usable as a promise!
stat("example.txt").then(function (stats) {
console.log("Got stats", stats);
}).catch(function (err) {
console.error("Yikes!", err);
});
```
## Promisify methods
```js
"use strict";
// Declare variables
const promisify = require("es6-promisify");
const redis = require("redis").createClient(6379, "localhost");
// Create a promise-based version of send_command
const client = promisify(redis.send_command, redis);
// Send commands to redis and get a promise back
client("ping").then(function (pong) {
console.log("Got", pong);
}).catch(function (err) {
console.error("Unexpected error", err);
}).then(function () {
redis.quit();
});
```
## Handle callback multiple arguments
```js
"use strict";
// Declare functions
function test(cb) {
return cb(undefined, 1, 2, 3);
}
// Declare variables
const promisify = require("es6-promisify");
// Create promise-based version of test
const single = promisify(test);
const multi = promisify(test, {multiArgs: true});
// Discards additional arguments
single().then(function (result) {
console.log(result); // 1
});
// Returns all arguments as an array
multi().then(function (result) {
console.log(result); // [1, 2, 3]
});
```
### Tests
Test with nodeunit
```bash
$ npm test
```
Published under the [MIT License](http://opensource.org/licenses/MIT).