2014-12-03 44 views
0

我想通過三個字段一個簡​​單的順序:按順序角順序由衆多領域

名稱,狀態和所有者

直至現在我有這個:

<tr ng-repeat='data in model.tableData|filter:model.search|orderBy:"name":model.sorted.name'> 

(模型在點擊時.sorted.name被切換真假的),現在我看到了我需要做這樣的事情:

<tr ng-repeat="data in model.tableData|filter:model.search|orderBy:['name','status','owner']"> 

爲了應對無線多個字段,但我怎麼能改變它,例如, 例如,從真到假的狀態,就像我對單個字段所做的那樣?

回答

1

您可以使用'!'即:

<tr ng-repeat="data in model|filter:model.search|orderBy:['name','!status','owner']"> 

請演示下面

var app = angular.module('app', []); 
 

 
app.controller('homeCtrl', function($scope) { 
 

 

 
    $scope.model = [{ 
 
     'name': 'a1', 
 
     'status': true, 
 
     'owner': 'as' 
 
    }, { 
 
     'name': 'a1', 
 
     'status': false, 
 
     'owner': 'as' 
 
    }, { 
 
     'name': 'a1', 
 
     'status': false, 
 
     'owner': 'as' 
 
    } 
 

 

 
    ] 
 

 
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 
<div ng-app="app"> 
 
    <div ng-controller="homeCtrl"> 
 
    <h3> By status reverse </h3> 
 
    <table> 
 
     <tr ng-repeat="data in model|filter:model.search|orderBy:['!status','name','owner']"> 
 
     <td>{{data.status}}|{{data.owner}}| {{data.name}}</td> 
 
     </tr> 
 
    </table> 
 
    <hr/> 
 

 
    <h3> By status</h3> 
 
    <table> 
 
     <tr ng-repeat="data in model|filter:model.search|orderBy:['status','name','owner']"> 
 
     <td>{{data.status}}|{{data.owner}}| {{data.name}}</td> 
 
     </tr> 
 
    </table> 
 
    </div> 
 
</div>