1.3.1 • Published 6 years ago

js-promisify v1.3.1

Weekly downloads
2,484
License
MIT
Repository
github
Last release
6 years ago

JS Promisify

Travis Coveralls David npm

Introduction

JS Promisify is a npm minimal and well-tested async module for NodeJS, that converts NodeJS async style functions to native JS promises (if they're supported by the underlying JavaScript engine, like in Node >= 4.0.0).

For example, it can be used to convert the NodeJS native file system library (fs), to easily perform file operations with promises.

Install

npm install js-promisify

(add "--save" if you want the module to be automatically added to your project's "package.json" dependencies)

Usage

promisify(fun, args, [ctx])
  • fun can be any function with a callback argument that follows the Node JS async function pattern signature (i.e. the callback is the last argument and has a signature function(err, data)).
  • args is an array containing all the arguments that need to be passed to fun, excluding the callback.
  • ctx (optional) is what the variable this should be bound to when fun is called with the arguments provided through the args array.
Example
const promisify = require('js-promisify');
const fs = require('fs');

promisify(fs.readFile, ['path/to/myfile.txt', {encoding: 'utf8'}])
  .then(function (data) {
    console.log(data);
  })
  .catch(function (err) {
    console.log(err);
  })

// Same as above, using async / await

(async () => {
  console.log(await promisify(fs.readFile, ['path/to/myfile.txt', {encoding: 'utf8'}]))
})()

MIT License

1.3.1

6 years ago

1.3.0

6 years ago

1.2.0

6 years ago

1.1.0

8 years ago

1.0.4

8 years ago

1.0.3

8 years ago

1.0.2

8 years ago

1.0.1

9 years ago

1.0.0

9 years ago

0.0.1

9 years ago