【发布时间】:2015-11-20 21:41:36
【问题描述】:
我正在 VS2013 中创建一个带有 Angular JS 项目(角度版本 v1.4.4)的 MVC5。我一直在编码,一切都很好,然后突然我开始在启动时遇到这个错误:
http://localhost:63937/Scripts/angular.js 中第 5395 行第 34 列出现 JavaScript 严重错误\n\nSCRIPT1010:预期标识符
我只在 IE10 上收到此错误,在 Chrome 上运行正常。
我的参考在布局文件中,如下所示:
<link href="~/Content/bootstrap.css" rel="stylesheet" />
<link href="~/Content/Site.css" rel="stylesheet" />
<script src="~/Scripts/jquery-1.10.2.js"></script>
<script src="~/Scripts/angular.js"></script>
<script src="~/Scripts/bootstrap.js"></script>
<script src="~/Scripts/angular-route.js"></script>
HTML 页面包含对 App.js 文件的引用。我可以发布一些代码,但它似乎甚至没有击中 App.JS 文件。有人遇到过这个问题,或者对我应该从哪里开始寻找这个问题有任何建议吗?据我所知,我将我的代码恢复到它在 IE10 中运行的状态,但它仍然无法运行。
这是 angular.js 文件中包含错误行号的特定函数。具体行在'catch'函数的return语句中:
getPromise: function() {
if (!this.defer) {
this.defer = $q.defer();
}
return this.defer.promise;
},
then: function(f1,f2) {
return this.getPromise().then(f1,f2);
},
'catch': function(f1) {
return this.getPromise().catch(f1);
},
'finally': function(f1) {
return this.getPromise().finally(f1);
}
任何帮助将不胜感激。
【问题讨论】:
-
我建议您使用版本
1.3.18,因为它是最后一个稳定版本。截至今天,AngularJS 团队还没有发布稳定的1.4.x版本。 -
@yvesmancera,你确定吗?在 Visual Studio 2013 NuGet Manager 中,它被列为稳定版本
-
我的错,看起来你是对的,1.4.4 是一个稳定版本。
-
我在 AngularJS 上找到了这个 issue,它说它会影响 IE8,但它也可能会影响 IE10。它不允许
catch作为标识符,因为它是 ES3 上的保留字。
标签: javascript angularjs visual-studio-2013 asp.net-mvc-5 internet-explorer-10