在父块中使用ng-init更改变量集

时间:2018-11-21 17:22:03

标签: angularjs

我需要在ng-if指令中使用一个变量作为条件,该指令是使用ng-init在父div中设置的。

<div ng-repeat="item in list" ng-init="flag = false">
  <div>
    <div ng-if="item == a" ng-init="flag = true">
      <!-- Some html code -->
    </div>
    <div ng-if="item == b" ng-init="flag = true">
      <!-- Some html code -->
    </div>
  </div>
  <div ng-if="flag == false">
    <!-- Some html code -->
  </div>
</div>

谁能告诉我如何完成这项工作?

修改

我想检查列表(list_a)中的每个项目是否存在于另一个列表(list_b)中。

对于list_a中的每个项目,如果存在,则显示一个div;如果list_b中不存在,则显示另一个div。

2 个答案:

答案 0 :(得分:1)

忘记ng-init,创建简单的指令,并在需要的地方添加

<div ng-repeat="item in list">
    <div>
        <div ng-if="item == a">
            <!-- Some html code for a -->
        </div>
        <div ng-if="item == b">
            <!-- Some html code for b-->
        </div>
    </div>
    <div ng-if="item != a && item != b">
        <!-- Some html code -->
        <!--or some directive-->
    </div>
</div>

答案 1 :(得分:0)

要检查(map #"ab+c*" ["abbb" "ac" "abbcc"]) => ("abbb" "abbcc") 中是否存在item中的list_a并显示一个块(如果存在),我使用了

list_b

如果第二个列表中没有<div ng-if="list_b.indexOf(item)+1">,则显示另一个div,

item