【发布时间】:2019-10-27 01:24:52
【问题描述】:
我使用 ng update 升级到 Angular 8。它运行它的迁移脚本(除其他外)删除了polyfills.ts 中的 es6/es7 导入。根据我的阅读,Angular 将为旧版浏览器(包括 IE11)创建一个特殊的构建,我不必再担心 polyfill 了?我将 browserlist 更新为 not IE 9-10 而不是 not IE 9-11 以(我认为)暗示它应该构建适当的 polyfill。
不幸的是,在运行 ng build 之后,我得到了一些与 polyfill 相关的错误,例如。 Reflect.getMetadata is not a function 和 Object doesn't support property or method 'includes'。我尝试将 reflect 和 array 导入放回 polyfill 并克服这些错误,但我得到了其他错误。这是怎么回事?我是否应该包含 polyfill?
如何让 Angular 8 与 IE11 一起工作?
【问题讨论】:
-
你有 ng serve 的问题吗?
-
@FatehMohamed
ng serve不适用于 IE11,但这是设计使然。我的问题是在运行ng build之后。刚刚编辑以反映这一点。谢谢。 -
你试过
ng build --prod吗?使用 JIT 编译器的正常构建需要 Reflect polyfill,并且不适用于 IE11。 -
@AvinKavish 没有,但我使用
-c标志运行它并指定了使用 aot 的配置 -
如果我运行
npx browserlist,我会在列表中看到 IE11,所以我不认为是这样,但我会试一试。
标签: angular angular-cli polyfills