es6-promise-min
This is a fork of es6-promise that publishes the minified bundle to npm as a single source file.
This is a polyfill of the ES6 Promise. The implementation is a subset of rsvp.js, if you're wanting extra features and more debugging options, check out the full library.
For API details and how to use promises, see the JavaScript Promises HTML5Rocks article.
Downloads
Node.js
To install:
npm install es6-promise
To use:
var Promise = require('es6-promise').Promise;
Usage in IE<9
catch
is a reserved word in IE<9, meaning promise.catch(func)
throws a syntax error. To work around this, you can use a string to access the property as shown in the following example.
However, please remember that such technique is already provided by most common minifiers, making the resulting code safe for old browsers and production:
promise['catch'](function(err) {
});
Or use .then
instead:
promise.then(undefined, function(err) {
});
Auto-polyfill
To polyfill the global environment (either in Node or in the browser via CommonJS) use the following code snippet:
require('es6-promise').polyfill();
Notice that we don't assign the result of polyfill()
to any variable. The polyfill()
method will patch the global environment (in this case to the Promise
name) when called.
Building & Testing
npm run build-all && npm test
- Run Mocha tests through Node and PhantomJS.