Ich erstelle ein Angular4-Projekt mit Angular CLI (1.1.2). Es läuft perfekt in Chrome (Version 59.0.3071.115) und Firefox (54.0.1), aber als ich versuchte, IE11 (Verison 11.0.9600.18738) zu verwenden, wird nichts angezeigt und wenn ich den Entwicklungsmodus im IE öffne, wird der folgende Fehler angezeigt ::
SCRIPT5022: Exception thrown and not caught
File: polyfills.bundle.js, Line: 829, Column: 34
Die detaillierte Fehlermeldung lautet wie folgt:
Weiß jemand, wie man dieses Problem löst?
Vielen Dank!
angular
internet-explorer
angular-cli
compatibility
polyfills
Terry Zhang
quelle
quelle
Antworten:
Um die Antwort von @ Zeqing detaillierter zu gestalten.
Ich habe die folgende Codezeile in kommentiert
.\my-app\src\polyfills.ts
:quelle
es6/string
und auskommentiert sindes6/array
.Die Standarddatei polyfills.ts ist kommentiert und muss Codezeilen auskommentieren und npm ausführen, um das entsprechende Modul zu installieren. Dann wird es mit dem IE11 kompatibel sein
quelle
[1,2,3].includes(3)
zum Beispiel verwenden,.includes
würde in IE11 explodieren, bis Sie nicht mehr kommentierencore-js/es6/array
. Wenn Sie keine es6-Funktionen verwenden, müssen Sie keine einschließen, und Ihre App ist weiterhin mit IE11 kompatibel.Ich habe dies erhalten, als ich versucht habe, einen es7-Import hinzuzufügen. Ich habe einfach den es6-Import durch den es7-Import ersetzt. Es stellte sich heraus, dass ich beides brauchte.
Gibt mir den Fehler "Ausnahme ausgelöst und nicht abgefangen":
Funktioniert gut:
quelle