web-dev-qa-db-ja.com

IE11でのAngular4アプリケーションの実行の問題

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

また、詳細なエラーメッセージは次のとおりです。

enter image description here

誰でもこの問題を解決する方法を知っていますか?

ありがとう!

70
Zeqing Zhang

デフォルトのpolyfills.tsファイルはコメント化されており、コード行のコメントを外してnpmを実行し、対応するモジュールをインストールする必要があります。その後、それはIE11と互換性があります

64
Zeqing Zhang

@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';
79
Switch

Es7インポートを追加しようとしたときにこれを取得しました。 es6インポートをes7インポートに置き換えました。両方が必要だったことがわかりました。

「例外がスローされ、キャッチされません」というエラーが表示されます。

import 'core-js/es7/array';

正常に動作します:

import 'core-js/es6/array';
import 'core-js/es7/array';
8
adamdport

ポリフィルでインポートのコメントを外した後、アプリを適切に機能させるためにいくつかのパッケージもインストールする必要があります。以下のリンクを確認してください:

https://blog.angularindepth.com/angular-and-internet-Explorer-5e59bb6fb4e9

0
Muhammad Haseeb