ngIf 用于遍历两个不同的数组
ngIf for iterating through two different Arrays
我有这段代码:
<tr ng-repeat="row in someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
在这段代码中,我遍历了 searchResults
数组。
我需要添加一个条件(想用 ngIf 来完成)。
- 如果条件为 true 我将遍历
someController.searchResults
- 如果条件为 false 我想遍历另一个数组,例如:
someController.someOtherSearchResults
我怎样才能做到这一点?
试试这个,
<div ng-if="Your condition(True)"> <tr ng-repeat="row in
someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
<div ng-if="Your condition(False)"> <tr ng-repeat="row in
someController.someOtherSearchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
希望对您有所帮助。
传递数据查看前请过滤数据
if(condition){
this.results=searchResults;
else{
this.results=someOtherSearchResults;
}
并在模板中保持简单:
<tr ng-repeat="row in someController.results"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
或
<tr ng-if="condition" ng-repeat="row in
someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
<tr ng-if="!condition" ng-repeat="row in
someController.someOtherSearchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
您可以在 ng-repeat
属性中使用纯 javascript,如下所示:
<tr ng-repeat="row in (someController.importantBoolean ? someController.searchResults : someController.someOtherSearchResults)"
ng-class="{'selected': row.selected}"
ng-click="selectRow(row)" >
</tr>
请参阅以下 plunker 示例:https://plnkr.co/edit/Nxh9gVB9GDP5FaLVDGrS
我有这段代码:
<tr ng-repeat="row in someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
在这段代码中,我遍历了 searchResults
数组。
我需要添加一个条件(想用 ngIf 来完成)。
- 如果条件为 true 我将遍历
someController.searchResults
- 如果条件为 false 我想遍历另一个数组,例如:
someController.someOtherSearchResults
我怎样才能做到这一点?
试试这个,
<div ng-if="Your condition(True)"> <tr ng-repeat="row in
someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
<div ng-if="Your condition(False)"> <tr ng-repeat="row in
someController.someOtherSearchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
希望对您有所帮助。
传递数据查看前请过滤数据
if(condition){
this.results=searchResults;
else{
this.results=someOtherSearchResults;
}
并在模板中保持简单:
<tr ng-repeat="row in someController.results"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
或
<tr ng-if="condition" ng-repeat="row in
someController.searchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
<tr ng-if="!condition" ng-repeat="row in
someController.someOtherSearchResults"
ng-class="{'selected': tableRow.selected}"
ng-click="selectRow(tableRow)" >
您可以在 ng-repeat
属性中使用纯 javascript,如下所示:
<tr ng-repeat="row in (someController.importantBoolean ? someController.searchResults : someController.someOtherSearchResults)"
ng-class="{'selected': row.selected}"
ng-click="selectRow(row)" >
</tr>
请参阅以下 plunker 示例:https://plnkr.co/edit/Nxh9gVB9GDP5FaLVDGrS