AngularJS ng-if有多个条件
我想知道是否有可能有这样的事情:
div ng-repeat="(k,v) in items" <div ng-if="k == 'a' or k == 'b'"> <!-- SOME CONTENT --> </div>
知道项目是通过请求接收的JSON容器,所以这就是为什么我使用的是一个关键的价值方法。
谢谢
我在问,因为我尝试了使用Googlesearch,但我能得到的唯一结果是使用ng-switch,但是我必须使用ng-if。
你当然可以。 就像是:
HTML
<div ng-controller="fessCntrl"> <label ng-repeat="(key,val) in list"> <input type="radio" name="localityTypeRadio" ng-model="$parent.localityTypeRadio" ng-value="key" />{{key}} <div ng-if="key == 'City' || key == 'County'"> <pre>City or County !!! {{$parent.localityTypeRadio}}</pre> </div> <div ng-if="key == 'Town'"> <pre>Town!!! {{$parent.localityTypeRadio}}</pre> </div> </label> </div>
JS
var fessmodule = angular.module('myModule', []); fessmodule.controller('fessCntrl', function ($scope) { $scope.list = { City: [{name: "cityA"}, {name: "cityB"}], County: [{ name: "countyA"}, {name: "countyB"}], Town: [{ name: "townA"}, {name: "townB"}] }; $scope.localityTypeRadio = 'City'; }); fessmodule.$inject = ['$scope'];
演示小提琴
OR运算符:
<div ng-repeat="k in items"> <div ng-if="k || 'a' or k == 'b'"> <!-- SOME CONTENT --> </div> </div>
尽pipe阅读起来很简单,但我希望作为一个开发者,你使用的是比“a”,“k”,“b”等更好的名字。
例如:
<div class="links-group" ng-repeat="group in groups" ng-show="!group.hidden"> <li ng-if="user.groups.admin || group.title == 'Home Pages'"> <!--Content--> </li> </div>
另一个例子
<p ng-if="group.title != 'Dispatcher News' or group.title != 'Coordinator News'" style="padding: 5px;">No links in group.</p>
与运算符 (对于那些绊倒这个stackoverflow答案寻找一个AND而不是OR条件)
<div class="links-group" ng-repeat="group in groups" ng-show="!group.hidden"> <li ng-if="user.groups.admin && group.title == 'Home Pages'"> <!--Content--> </li> </div>