angularjs - ng-show 中 $index 的可访问性

标签 angularjs angularjs-ng-repeat angular-ngmodel angularjs-ng-show

我尝试在选中上一个选择时显示一个选择。

<div ng-repeat="item in collection">

<div ng-show="$index === 0 || $parent.list[$index].nom">
    <select ng-model="$parent.list[$index].nom" ng-options="..."></select>
</div>
  1. <div ng-repeat="item in collection">

我循环遍历集合并创建许多选择集合中有项目。

  1. <div ng-show="$index === 0 || $parent.list[$index].nom">

我想在两个条件下显示/隐藏选择的父 div:

  1. 如果索引等于 0 则显示 div(用于显示第一个选择)
  2. 如果当前 ngModel 包含名称,我会显示 div
  1. <select ng-model="$parent.list[$index].nom" ng-options="...">

我放置了一个动态的 ngModel,其中每个选择都有自己的模型,例如:

exemple of ngModel
(来源:noelshack.com)

测试示例:我在一个选择中有三个选项,所以我想给成员(member)机会选择每个选项。

如果成员选择选项 1,则第二个选择显示,如果他选择第二个选项,则选择第三个选择显示,但不再选择其他...

这里的问题: 指令 ngShow 中的 $index 似乎在这种情况下已知:

$index === 0

但这里没有:

$parent.list[$index].nom

最佳答案

您必须在您的 ng-repeat 中包含 track by $index...

<div ng-repeat="item in collection track by $index>

关于angularjs - ng-show 中 $index 的可访问性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35228818/

相关文章:

使用单选按钮和 ng-repeat 进行 AngularJS 表单验证

javascript - 重置为下拉菜单中的未绑定(bind)选项

javascript - 使用 ng-repeat 更改按 Angular 单击的按钮的 css 类

javascript - AngularJS 中使用整数字段进行过滤

javascript - angularjs ng 风格 : background-image isn't working

javascript - 使用 ngRepeat 破坏单选按钮上的 ngModel

javascript - ngModel - 如何处理它在不同浏览器中的不同行为?

angularjs - 测试来自 Controller 调用的服务的广播

javascript - 使用 angularjs 中的选项卡

android - 在 ionic 中每行显示 5 列