AngularJS $index inside ng-switch



我正在尝试访问ng-repeat$index并将其放在ng-switch-when中。这是我尝试过的最后一件事。我正在尝试做的一小部分:

<li ng-repeat="contact in contacts" ng-switch on="MenuSelected">
 <span ng-switch-when="$index">{{ contact }} {{$index}}</span>
</li>

MenuSelected 例如,我在控制器中用 0 定义了,并且我有 2 个触点进行测试。我试图在不同的标签中混合ng东西,所有东西都掉下来(只是显示线条),所以我认为这不是问题所在。当我删除$index并放置例如 0 时,一切都会显示出来。

不能将表达式与ngSwitch一起使用

重新引用此文档

请注意,要匹配的属性值不能是表达式。它们被解释为要匹配的文本字符串值。例如,ng-switch-when="someVal" 将与字符串 "someVal" 匹配,而不是与表达式 $scope.someVal 的值匹配

这意味着ng-switch-when="$index" $index被视为字符串而不是索引值


改用 ngIf

    <span ng-if="$index == MenuSelected">{{ contact }} {{$index}}</span>

这是工作小提琴

最新更新