Il s'agit d'un polyfill de la promesse ES6. L'implémentation est un sous-ensemble de rsvp.js extrait par @jakearchibald, si vous souhaitez des fonctionnalités supplémentaires et plus d'options de débogage, consultez la bibliothèque complète.
Pour plus de détails sur l’API et comment utiliser les promesses, consultez l’article JavaScript Promises HTML5Rocks.
es6-promise 27,86 Ko (7,33 Ko gzippé)
es6-promise-auto 27,78 Ko (7,3 Ko gzippé) - Fournit/remplace automatiquement Promise
si elle est manquante ou rompue.
es6-promise-min 6,17 Ko (2,4 Ko compressés)
es6-promise-auto-min 6,19 Ko (2,4 Ko gzippé) - Version réduite de es6-promise-auto
ci-dessus.
Pour utiliser via un CDN, incluez ceci dans votre code HTML :
<!-- Fournit/remplace automatiquement la « Promesse » si elle est manquante ou rompue. --><script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.js"></script><script src="https://cdn. jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.js"></script> <!-- Version minifiée de `es6-promise-auto` ci-dessous. --><script src="https://cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.min.js"></script><script src="https:// cdn.jsdelivr.net/npm/es6-promise@4/dist/es6-promise.auto.min.js"></script>
Pour installer :
fil ajouter es6-promesse
ou
npm installer la promesse es6
Pour utiliser :
var Promesse = require('es6-promise').Promise;
catch
et finally
sont des mots-clés réservés dans IE <9, ce qui signifie promise.catch(func)
ou promise.finally(func)
renvoie une erreur de syntaxe. Pour contourner ce problème, vous pouvez utiliser une chaîne pour accéder à la propriété, comme indiqué dans l'exemple suivant.
Cependant, la plupart des minificateurs résoudront automatiquement ce problème pour vous, rendant le code résultant sûr pour les anciens navigateurs et la production :
promesse['catch'](fonction(err) { //...});
promesse['finalement'](fonction() { //...});
Pour polyfiller l'environnement global (soit dans Node, soit dans le navigateur via CommonJS), utilisez l'extrait de code suivant :
require('es6-promise').polyfill();
Alternativement
require('es6-promise/auto');
Notez que nous n’attribuons le résultat de polyfill()
à aucune variable. La méthode polyfill()
corrigera l'environnement global (dans ce cas, le nom de la Promise
) lorsqu'elle sera appelée.
Vous devrez avoir installé PhantomJS globalement pour pouvoir exécuter les tests.
npm install -g phantomjs
npm run build
pour construire
npm test
pour exécuter des tests
npm start
à exécuter un observateur de build et un serveur Web à tester
npm run test:server
pour un exécuteur de test testem et un constructeur de surveillance