typescript(2.0.0)を使ってangular2アプリケーション(2.0.0)を使用しています。それはChromeとエッジで正常に動作しますAngular2アプリがES6でIEで動作しない、ES5でコンパイルエラーが発生する
"target": "es6",
が、それはIE11で働いていない:私のTSconfigで、私はこのラインでES6してコンパイルします。
私はES5をターゲットに、それを変更したが、その後、私のようないくつかのコンパイルエラーを取得:
ClientApp\app\services\tenant.service.ts(9,16): error TS2304: Cannot find name 'Promise'.
ClientApp\app\components\manage\users.component.ts(70,31): error TS2339: Property 'json' does not exist on type '{}'.
をこれは出力を生成し、実行時にんですIE11と他のブラウザで動作しているようです(私はテストしていませんすべて)。私はまだコンパイルエラーが気に入らない。
私にはcore-jsが含まれています。私はそれがこの問題の修正だと思った。
5または6を対象としますか?
IEでes6を使用する必要がありますか?私は行方不明のシムはありますか?
私はどのようにes5を使用してコンパイルエラーを取り除くことができますか?あなたが行のコードを貼り付けてください可能性があり、
{
"compileOnSave": true,
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"skipLibCheck": true
},
"exclude": [
"node_modules"
]
}
私はes6を使用していました。私がes5に変更した時、多くのエラーがあります。これはほんの数です。 私は以下のようにTS定義を追加しました:/// <リファレンスパス= "../../../../ node_modules/es6-promise/es6-promise.d.ts" /> 。 –
これらのTypeDefinitionを使用すると、Promiseでエラーが表示されますか? /// <リファレンスパス= "../ node_modules/typescript/lib/lib.es6.d.ts" />このTS定義をインポートした後、少なくともPromiseエラーが発生するはずです。 – dokkis
私はes5もターゲットにしていますが、プロミスを使用しようとすると、node_modules/typescript/lib/lib.es2015.promise.d.tsからインポートされます。 – dokkis