J'utilise exactement le code de SweetAlert2 page d'exemples :
swal({
title: 'Are you sure?',
text: "You won't be able to revert this!",
type: 'warning',
showCancelButton: true,
confirmButtonColor: '#3085d6',
cancelButtonColor: '#d33',
confirmButtonText: 'Yes, delete it!'
}).then((result) => {
if (result.value) {
swal(
'Deleted!',
'Your file has been deleted.',
'success'
)
}
})
Fonctionne correctement sur Firefox et Chrome, mais Internet Explorer affiche SCRIPT1002: Syntax Error
et n'exécute pas le script ... IE signale cette partie comme une erreur de syntaxe:
}).then((result) => {
Merci pour toute aide
(result) => {}
est une fonction de flèche complètement non prise en charge dans IE. Pour résoudre ce problème, vous devrez utiliser une fonction anonyme traditionnelle:
swal({
// options...
}).then(function(result) {
if (result.value) {
swal('Deleted!', 'Your file has been deleted.', 'success');
}
});
IE11 ne prend pas en charge certaines fonctionnalités modernes de l'ES6 telles que les fonctions de flèche et les promesses .
Pour résoudre ce problème, vous devez soit compiler votre code avec Babel, soit utiliser un Promise-polyfill avec la syntaxe traditionnelle function
:
swal(...)
.then(function(result) {
console.log(result.value)
})
En savoir plus sur l'utilisation de SweetAlert2: https://github.com/sweetalert2/sweetalert2#usage
Result.value
ne fonctionne pas de mon côté. Voici mon code:
.then(function (result) {
if (result) {
//Implement Ajax here....
swal({
title: "Error!",
text: " Data was used and can't be deleted.",
icon: "error",
button: "Ok!",
});
}
});
En plus des fonctions anonymes, pour que swal soit pleinement fonctionnel dans IE, il est nécessaire d’ajouter sa balise script et script
<script src="https://cdnjs.cloudflare.com/ajax/libs/core-js/2.4.1/core.js"></script>
Comme on le voit dans https://github.com/sweetalert2/sweetalert2/wiki/Migration-from-SweetAlert-to-SweetAlert2#1-ie-support