JSPM

promisify-es6

1.0.3
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 10506
  • Score
    100M100P100Q16410F
  • License MIT

Promisify callback-style functions to ES6 promises

Package Exports

  • promisify-es6

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-es6) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

NOTE: Starting from Node.js v.8.0.0, the promisify method is now included in the util native library.

On Node.js, the usage of the native method is recommended!

// Native promisify example
const util = require('util');
const readfile = util.promisify(fs.readFile);

ES6 Promisify

This is a library to promisify callback-style functions to ES6 promises. You can also use it on the client-side.

Install it with:

npm i --save promisify-es6
or
git clone https://github.com/manuel-di-iorio/promisify-es6.git

Example:

var promisify = require("promisify-es6");
var fs = require("fs");
var readFile = promisify(fs.readFile);

readFile("test.js")
 .then(function(content) {
    console.log(content.toString());
 })
 .catch(function(err) {
    console.error(err);
 });

A promisified function is still callable with the callback style:

readFile("test.js", function(err, content) { //etc...

You can even promisify entire modules or arrays:

var readFile = promisify(require("fs")).readFile;

API

promisify(method[, options])
*Method* can be a function or an array/map of functions to promisify

*Options* can have the following properties:

    `context`: The context which to apply the called function (by default is the function itself)
    `replace`: When an array/map is passed and this is truthy, it will replace the original object

Test with Mocha:

npm test