promise-light - npm
promise-light
is standard ES6 Promise implementation.
it supports browser Chrome, Firefox, ie11, ie9, ie8. (tested)
also supports node.js/io.js.
it throws unhandled rejection error.
if you have native Promise then use it.
(faster than native Promise)
INSTALL:
for node.js or io.js
$ npm install promise-light --save
or
for browsers
https://lightspeedworks.github.io/promise-light/promise-light.js
PREPARE:
you can use Promise. (native Promise or promise-light)
{ 'use strict'; // you can use Promise}typeof Promise === 'function' ? Promise : ;
or
use native Promise or promise-light.
var Promise = thisPromise || ;
native Promise is overwritten by promise-light.
var Promise = thisPromiseLight || ;
USAGE:
Promise Specification
new Promise(setup)
how to make promise.
p = { // async process -> resolve(value) or reject(error) try ; catch error ; };// setup(// function resolve(value) {},// function reject(error) {})
example
var p = { ; }; p;
promise.then(onFulfilled, onRejected)
how to use promise.
p = p;
example
p = p;
promise.catch(onRejected)
how to catch error from promise.
p = p;
or
when you use old browser
p = p'catch' {};
Promise.all(iterable or array)
wait for all promises.
p = Promiseallpromise ...;
Promise.race(iterable or array)
get value or error of first finished promise.
p = Promise;
Promise.resolve(value or promise)
get resolved promise.
p = Promise;
Promise.reject(error)
get rejected promise.
p = Promise;
Promise.accept(value)
get resolved (accepted) promise.
p = Promiseacceptvalue;
Promise.defer()
make deferred object with promise.
dfd = Promisedefer;// -> {promise, resolve, reject}
LICENSE:
MIT