![]() | Name | Last modified | Size | Description |
---|---|---|---|---|
![]() | Parent Directory | - | ||
![]() | HISTORY.md | 8 years ago | 1.1K | |
![]() | LICENSE | 8 years ago | 1.1K | |
![]() | README.md | 8 years ago | 2.8K | d768d73 docs [كارل مبارك] |
![]() | child_process.js | 8 years ago | 113 | |
![]() | crypto.js | 8 years ago | 135 | |
![]() | dns.js | 8 years ago | 240 | |
![]() | fs.js | 8 years ago | 1.0K | |
![]() | index.js | 8 years ago | 206 | 3e510ca test new git [كارل مبارك] |
![]() | package.json | 2 years ago | 1.8K | 3e510ca test new git [كارل مبارك] |
![]() | readline.js | 8 years ago | 1.6K | |
![]() | zlib.js | 8 years ago | 181 |
Modernize node.js to current ECMAScript specifications! node.js will not update their API to ES6+ for a while. This library is a wrapper for various aspects of node.js' API.
Set mz
as a dependency and install it.
npm i mz
Then prefix the relevant require()
s with mz/
:
var fs = require('mz/fs')
fs.exists(__filename).then(function (exists) {
if (exists) // do something
})
With ES2017, this will allow you to use async functions cleanly with node's core API:
const fs = require('mz/fs')
async function doSomething () {
if (await fs.exists(__filename)) // do something
}
Many node methods are converted into promises. Any properties that are deprecated or aren't asynchronous will simply be proxied. The modules wrapped are:
child_process
crypto
dns
fs
(uses graceful-fs
if available)readline
zlib
var exec = require('mz/child_process').exec
exec('node --version').then(function (stdout) {
console.log(stdout)
})
mz
uses any-promise
.
Yes, Node 4.x ships with stable promises support. For older engines,
you should probably install your own promise implementation and register it with
require('any-promise/register')('bluebird')
.
Nope, probably slower actually.
Sure. Open an issue.
Currently, the plans are to eventually support: