You're Invited: Meet the Socket team at BSidesSF and RSAC - April 27 - May 1.RSVP
Socket
Sign inDemoInstall
Socket

js-promisify

Package Overview
Dependencies
Maintainers
1
Versions
10
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

js-promisify

A simple utility to convert NodeJS async functions to native JS promises.

1.3.1
latest
Source
npm
Version published
Weekly downloads
1.4K
-10.12%
Maintainers
1
Weekly downloads
 
Created
Source

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

Keywords

promise

FAQs

Package last updated on 24 May 2018

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts