Angular CLI(1.1.2)を使用してAngular4プロジェクトを構築しています。 Chrome(バージョン59.0.3071.115)およびfirefox(54.0.1)で完全に動作しますが、IE11(Verison 11.0.9600.18738)を使用しようとすると何も表示されず、IEで開発者モードを開くと、次のエラーが表示されます:
SCRIPT5022: Exception thrown and not caught
File: polyfills.bundle.js, Line: 829, Column: 34
また、詳細なエラーメッセージは次のとおりです。
誰でもこの問題を解決する方法を知っていますか?
ありがとう!
デフォルトのpolyfills.tsファイルはコメント化されており、コード行のコメントを外してnpmを実行し、対応するモジュールをインストールする必要があります。その後、それはIE11と互換性があります
@Zeqingの答えに詳細を追加します。
.\my-app\src\polyfills.ts
の次のコード行のコメントを外しました。
/** IE9, IE10 and IE11 requires all of the following polyfills. **/
import 'core-js/es6/symbol';
import 'core-js/es6/object';
import 'core-js/es6/function';
import 'core-js/es6/parse-int';
import 'core-js/es6/parse-float';
import 'core-js/es6/number';
import 'core-js/es6/math';
import 'core-js/es6/string';
import 'core-js/es6/date';
import 'core-js/es6/array';
import 'core-js/es6/regexp';
import 'core-js/es6/map';
import 'core-js/es6/set';
Es7インポートを追加しようとしたときにこれを取得しました。 es6インポートをes7インポートに置き換えました。両方が必要だったことがわかりました。
「例外がスローされ、キャッチされません」というエラーが表示されます。
import 'core-js/es7/array';
正常に動作します:
import 'core-js/es6/array';
import 'core-js/es7/array';
ポリフィルでインポートのコメントを外した後、アプリを適切に機能させるためにいくつかのパッケージもインストールする必要があります。以下のリンクを確認してください:
https://blog.angularindepth.com/angular-and-internet-Explorer-5e59bb6fb4e9