Angularjs UI引导转盘第一张幻灯片不';t show然后在最后一张幻灯片上崩溃

Angularjs UI引导转盘第一张幻灯片不';t show然后在最后一张幻灯片上崩溃,angularjs,carousel,angular-bootstrap,Angularjs,Carousel,Angular Bootstrap,我试图实现ui引导转盘,但当页面加载时,第一个图像不会显示,但控件和指示器会显示 然后,当第二个图像显示时,我可以使用控件返回到第一个图像,它将显示良好。我可以使用控件进入最后一张幻灯片或让它自动滑动,但当我进入最后一张幻灯片时,转盘停止工作,并出现错误“无法读取未定义的属性“slide”,该错误指向ui-bootstrap-tpls.js文件的第576行 我不确定我做错了什么,因为这看起来很容易实现,这是我的代码,这是一个链接,指向一个站点,有一个正在发生的事情的实例 查看 <div

我试图实现ui引导转盘,但当页面加载时,第一个图像不会显示,但控件和指示器会显示

然后,当第二个图像显示时,我可以使用控件返回到第一个图像,它将显示良好。我可以使用控件进入最后一张幻灯片或让它自动滑动,但当我进入最后一张幻灯片时,转盘停止工作,并出现错误“无法读取未定义的属性“slide”,该错误指向ui-bootstrap-tpls.js文件的第576行

我不确定我做错了什么,因为这看起来很容易实现,这是我的代码,这是一个链接,指向一个站点,有一个正在发生的事情的实例

查看

<div class="slider">
  <uib-carousel active="active" interval="3000">
    <uib-slide ng-repeat="slide in home.slides track by slide.id" index="slide.id">
      <img class="img-responsive" ng-src="{{slide.img}}" alt="{{slide.alt}}">
    </uib-slide>
  </uib-carousel>
</div>
*编辑


我试用了常规的引导转盘,效果很好。我可以用它来解决这个问题,但我更愿意找出ui引导旋转木马的错误所在

我收到了一个类似的错误,它说:“TypeError:无法读取未定义的属性‘slide’”

我按照此处的一条评论进行了修改:

index="slide.id"
为了


这就解决了问题。我注意到这个没有答案,所以我想提交这个

问题出在ids中-图片的第一个id应该是0,您会没事的

尝试将代码更改为使用track by$index,而不是track by slide.id,看看这是否有帮助。@AlexChance是这样做的。非常感谢。我想知道为什么我原来的方法不起作用,因为文档就是这样做的。这可能是您格式化ID的方式。我在你的网站上调试了代码,看到这一行
angular.extend(q[s].slide |{}….
当我检查
s
时,它包含“4”,因为幻灯片数组只有4个元素,最后一个元素应该是[3],这就是它抛出错误的原因。也可以解释为什么它不会立即显示第一张幻灯片,如果它预期为[0],并且您的第一个ID为“1”,使其成为第二个元素。@AlexChance在看到track by$index起作用后,我也在想同样的事情,所以我尝试将ID改为从0开始,但第一张幻灯片仍然没有显示,尽管最后没有出现错误。再次感谢您的帮助。只要它解决了您的问题,我可能不会浪费太多时间来解决它。很高兴我可以提供帮助。因此基本上,
幻灯片.id
应该从0(零)开始,因为属性
index
似乎是指数组的索引。我同意,我使用的是对象的id,它们不是按连续顺序排列的,然后我添加了一个索引顺序id,然后再进行操作。
index="slide.id"
index="$index"