Ich verwende den genauen Code der SweetAlert2-Beispielseite:

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'
    )
  }
})

Funktioniert gut unter Firefox und Chrome, aber Internet Explorer zeigt SCRIPT1002: Syntax Error an und führt das Skript nicht aus ... IE markiert diesen Teil als Syntaxfehler:

}).then((result) => {

Danke für jede Hilfe

6
Pedro Antônio 18 Apr. 2018 im 13:02

3 Antworten

Beste Antwort

(result) => {} ist eine Pfeilfunktion, die im IE nicht unterstützt wird. Um dies zu beheben, müssen Sie eine traditionelle anonyme Funktion verwenden:

swal({
  // options...
}).then(function(result) {
  if (result.value) {
    swal('Deleted!', 'Your file has been deleted.', 'success');
  }
});
17
Rory McCrossan 18 Apr. 2018 im 10:11

Zusätzlich zu anonymen Funktionen, damit Swal im IE voll funktionsfähig ist, ist das erforderliche Add- und Script-Tag erforderlich

<script src="https://cdnjs.cloudflare.com/ajax/libs/core-js/2.4.1/core.js"></script>

Wie in https: // github zu sehen .com / sweetalert2 / sweetalert2 / wiki / Migration von SweetAlert zu SweetAlert2 # 1-ie-support

0
Pedro Antônio 18 Apr. 2018 im 10:21

IE11 unterstützt einige moderne ES6-Funktionen wie Pfeilfunktionen und Versprechen.

Um dies zu beheben, sollten Sie entweder Ihren Code mit Babel kompilieren oder eine Promise-Polyfill mit der traditionellen function Syntax:

swal(...)
  .then(function(result) {
    console.log(result.value)
  })

Weitere Informationen zur Verwendung von SweetAlert2 finden Sie unter: https://github.com/sweetalert2/sweetalert2#usage

3
Limon Monte 18 Apr. 2018 im 10:16