【问题标题】:Angular 6 website not working on IE but works locally on all browsersAngular 6 网站无法在 IE 上运行,但可以在所有浏览器上本地运行
【发布时间】:2019-07-03 09:25:49
【问题描述】:
  • Angular 6 网站
  • VMware虚拟机环境
  • Windows Server 2012 R2 标准服务器

我有一个角网站在我笔记本电脑上的 chrome 浏览器(所有版本)中运行良好

  • 在我的笔记本电脑(所有版本)的 IE 中,相同的 Angular 网站运行良好
  • 但是当我将它部署在客户端服务器、虚拟机、chrome 网站上时工作正常
  • 但 IE 网站为所有版本(数据中心中的所有虚拟机)提供白色空白页
  • 控制台没有错误也没有警告
  • 相关的 polyfills.ts 行未注释

我将IE的模式更改为兼容,在控制台观察到以下错误:

SCRIPT5009: 'Promise' is undefined
jspdf.min.js (118,654)
SCRIPT1002: Syntax error
main.js (8527,59)
SCRIPT5011: Can't execute code from a freed script
zone.js (2775,1)

【问题讨论】:

  • 您是否取消了 polyfills.ts 中相关行的注释?
  • 你能给我更多的信息吗
  • 出于测试目的,您能否尝试托管任何具有类似配置的示例网页,然后尝试使用您的虚拟机环境访问它,以检查您是否能够毫无问题地访问它。可能是任何与配置相关的问题。
  • 由于我没有访问 IIS 的权限,这也是不可能的
  • 我已经编辑了我的问题,仅在虚拟机环境中托管的 IE 中,我在兼容模式下遇到了一些错误。

标签: angular typescript internet-explorer polyfills


【解决方案1】:

要让 Angular App 在 IE 上运行,请转到 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/weak-map';
 import 'core-js/es6/set';

【讨论】:

  • 最终在您的笔记本电脑的 IE 中为您本地构建的作品?但不是在您部署到您的虚拟机时,是这样吗?
  • 是的,它在我的笔记本电脑上运行良好,适用于所有 IE 版本
  • 当我在笔记本电脑上托管 IIS 时,它的工作没有任何问题
  • 看起来问题出在区域和安全设置上,我不是管理员,也无权更改这些设置。知道在哪里以及在什么地方更改设置
  • 这里可能有很多东西... (1) 网站是 HTTPS 吗? (2) 转到虚拟机上的 IE 和工具 > 互联网选项 > 安全设置 (3) 当您在此虚拟机上托管网站时,尝试从笔记本电脑访问它,您会看到白屏?
【解决方案2】:

这是一个与 zone.js 和 IE 开发工具相关的已知错误。 https://github.com/angular/angular/issues/31723

开发解决方法是在加载 zone.js 之前添加这个标志

(window as any).__Zone_enable_cross_context_check = true;
import 'zone.js/dist/zone';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多