我有一组项目,我想用ng-repeat过滤ng-repeat作为过滤集合的字符串,到目前为止我还没有找到一种方法使表达式被否定时,我是做这样的事情:
<select ng-model="languageOrigin" ng-change="updatePrice()">
<option ng-repeat="language in languages">{{language}}</option>
</select>
<select ng-model="languageDestination" ng-change="updatePrice()">
<option ng-repeat="language in languages | filter:!languageOrigin">{{language}}</option>
</select>
Run Code Online (Sandbox Code Playgroud)
在文档中,它说我们应该使用!否定表达但仍然没有运气.
我究竟做错了什么?
END*_*nao 43
'!' 字符前置到过滤字符串,如下所示:
过滤:+ languageOrigin '!'
<select ng-model="languageOrigin" ng-change="updatePrice()">
<option ng-repeat="language in languages">{{language}}</option>
</select>
<select ng-model="languageDestination" ng-change="updatePrice()">
<option ng-repeat="language in languages | filter:'!'+languageOrigin">{{language}}</option>
</select>
Run Code Online (Sandbox Code Playgroud)
dmo*_*ock 25
如果使用对象,您可能还对以下内容感兴趣:
<li data-ng-repeat="obj in objs | filter:({obj_attr: '!obj_val'})">
...
</li>
Run Code Online (Sandbox Code Playgroud)
在AngularJS 1.1.5中测试过.