我有一个现有的 Angular 应用程序,它在 Chrome 中运行良好,但在(显然)Internet Explorer 上失败了。发生的事情是这样的:
我安装的几个 NPM 模块带有不同的发行版。例如,kendo-angular-charts
下的文件夹结构如下所示:
- dist
|- cdn
|- es
|- es2015
|- npm
|- systemjs
当站点在 IE 中中断时,是因为 es2015\common\configuration.service.js
中的以下声明:
export class Change {
constructor(key, value) {
this.key = key;
this.value = value;
}
}
它中断(无效语法错误)因为 ES2015 类是 not supported in Internet Explorer .但是 es
文件夹中还有一个完全有效的 ES5 版本文件。
那么我该如何使用它呢?
我检查了 angular.json
和 package.json
似乎相关的选项,但找不到任何东西。
最佳答案
请参阅 Angular 浏览器支持文档 (https://angular.io/guide/browser-support#enabling-polyfills) - 无需导入特定包的不同版本。如果您使用的是 Angular CLI,则只需编辑 src/polyfills.ts
文件并取消注释浏览器 polyfill。
如果您不使用 Angular CLI,您可以使用 NPM 导入 core-js 并导入相关的 polyfills ( https://www.npmjs.com/package/core-js )。
关于angular - 指定要在 Angular 中使用的 NPM 模块平台,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53868845/