对象引用未设置为Internet Explorer上AngularJS中对象的实例

症状:

当通过Intranet URL在Visual Studio 2015中加载AngularJS时,此时会在AngularJS库中引发错误:

line 7: if(H(b)||Ta(b)) 

(对于angularjs.min.js)

  line 322: } else if (isArray(obj) || isArrayLike(obj)) { 

(对于angularjs.js)

在我的情况下,这是当我有第二个本地站点configuration127.0.0.1“localhost替代”。 为什么Internet Explorer显示此错误? 它可以在Chrome,Edge或Firefox中正常工作

在这些情况下,浏览器不会在本地PC上重新识别它。 它将恢复到Intranet设置。 当Internet Explorer认为您正在浏览您的内联网时,它将恢复到IE7渲染引擎。 而Angular不会说史前的很好。

解析度?

您可以发送一些自定义标题与每个响应。 你可以把它们添加到你的web.config中,像这样:

  <?xml version="1.0" encoding="utf-8"?> <configuration> <system.webserver> <httpProtocol> <customHeaders> <add name="X-UA-Compatible" value="IE=edge" /> .... 

这个头文件指示Internet Explorer使用其当前的渲染引擎,所以AngularJS会像它应该那样渲染。