Promise shim and functionality extender
- What is it?
- Installation
- How to use it:
- Examples
- How to contribute
- License
This library allows to use promises in older browsers as well as add extra functionality to promises that allows promise functionality in the kaleo library set
This libray can be installed using:
The script can be loaded both in the head and in the body. All functionality is automatically loaded as soon as the file is loaded. Note: include this script before any other scripts for proper implementation
<script src="/(node_modules|bower_modules)/peprze/peprze.min.js"></script>
To start using it is as simple as instancing a new promise in the same way as native promises
var test = new Promise(function(resolve, reject){
/* Do async here */
})
Using Xhr to fetch files using promises
function fetchfile(url) {
var xhr = new XMLHttpRequest();
xhr.open('GET', url, true);
return new Promise(function(resolve, reject){
xhr.onreadystatechange = function() {
if(xhr.readyState === 4) {
if(xhr.status === 200) {
resolve(xhr.responseText);
}
else {
reject(new Error(xhr.status));
}
}
}
xhr.send();
});
}
If You would like to contribute here are the steps
- Clone Repo: Peprze Github Repo
- Install any necessary dev dependencies
- build the project
npm run build
- test your changes don't break anything
npm test
- Make a pull request on github for your changes :)
You can view the license here: License