Skip to content

lvscar/es6-promise

This branch is 1 commit ahead of, 290 commits behind stefanpenner/es6-promise:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

b56a5ac · Apr 12, 2015
Aug 27, 2014
Aug 27, 2014
Apr 12, 2015
Dec 30, 2014
Apr 8, 2015
Nov 28, 2013
Aug 27, 2014
Aug 27, 2014
Aug 27, 2014
Aug 27, 2014
Jan 11, 2015
Aug 27, 2014
Dec 30, 2014
Aug 27, 2014
Apr 28, 2014
Feb 4, 2015
Dec 1, 2014
Apr 3, 2015
Dec 30, 2014

Repository files navigation

ES6-Promise (subset of rsvp.js)

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 to build
  • npm test to run tests
  • npm start to run a build watcher, and webserver to test
  • npm run test:server for a testem test runner and watching builder

About

A polyfill for ES6-style Promises

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 99.1%
  • HTML 0.9%