我正在尝试将我的 bootstrap-ui 版本从 0.14.x 升级到最新的 1.3.2,我遇到了一些关于 uib-tabset / uib-tab 指令的问题。
我要做的是使用 ng-repeat 动态创建选项卡,并让“活动”选项卡由我的重复模型的表达式或属性处理。
<uib-tabset type="pills" active="{{activeItem.Id}}" >
<uib-tab class="arrow_box"
ng-repeat="item in myObject.myCollection"
ng-click="SetActiveItem(item)" id="{{$index}}"
index="{{item.Id}}">
index= " {{item.Id}}"绑定根本不起作用。所以我似乎无法通过表达式设置我的选项卡索引,如果我可以在 ng-repeat 完成后让 uib-tabset 使用 active 属性,这将不是问题。
activeItem 是封闭控制器的 $scope 上的一个属性。
添加此绑定会导致错误:
Error: [$parse:syntax] Syntax Error: Token '{' invalid key at column 2 of the expression [{{item.Id}}] starting at [{item.Id}}].
如果我省略所有内容(uib-tab 上的 index 属性和 uib-tabset 上的 active 属性),它不会引发任何错误,但默认情况下它也不会选择任何选项卡,这意味着我需要单击一个来激活该选项卡。即使文档声明默认值是“默认为第一个选项卡”。
有什么原因 ng-repeat 不再适用于这个指令集?我可能在这里遗漏了一些东西,但我很难过。
谢谢
编辑:这是一个 plunkr 链接,显示我遇到的问题。 https://plnkr.co/edit/DWOILq?p=preview