尽管es5-shim,ng-repeat在ie-8上失败

时间:2014-04-28 05:37:07

标签: angularjs sharepoint-2010 internet-explorer-8 es5-shim

我有一个角度模型page,它有一个数组images。在我的模板中,我有这个:

<div slide="slide" ng-repeat="slide in page.images" active="slide.active">

我试图在所有优先顺序中导入es5-shim.js。所有其他浏览器都正确呈现它,除了document mode IE8(sharepoint 2010强制执行此操作)。我得到了:

TypeError: Object doesn't support this property or method<div class="item text-center ng-isolate-scope" active="slide.active" ng-repeat="slide in page.images" slide="slide" ng-transclude ng-class="{&#10;    'active': leaving || (active &amp;&amp; !entering),&#10;    'prev': (next || active) &amp;&amp; direction=='prev',&#10;    'next': (next || active) &amp;&amp; direction=='next',&#10;    'right': direction=='prev',&#10;    'left': direction=='next'&#10;  }" ng-1398662894321="121">

结果是在该div内部,<img ng-src="{{ slide.url }}"图片获取了错误的网址。

如果我删除es5-shim.js,我也会收到有关同一行不支持indexOf的错误消息。奇怪的是,ng-repeat正在应用程序的其他地方工作,我使用angular-treeview。

这是什么类型的错误,如果不是indexOf,有没有办法解决它?

1 个答案:

答案 0 :(得分:1)

您正在使用“slide directive”=&gt; slide =“slide”和另一张幻灯片在ng-repeat =“slide in page.images”中它们是冲突的。

还有一个建议,总是在你的指令前面添加前缀。 像ct-slide(javascript中的ctSlide)