Angularjs 使用智能表进行二级排序?
我有一个使用智能表的分页表。我想先使用状态,然后使用代码进行排序。我不能使用AngularJS中的orderBy,因为它将对每个页面的元素进行排序,而不是全部。和st sort智能表订单的默认值仅适用于一列Angularjs 使用智能表进行二级排序?,angularjs,smart-table,Angularjs,Smart Table,我有一个使用智能表的分页表。我想先使用状态,然后使用代码进行排序。我不能使用AngularJS中的orderBy,因为它将对每个页面的元素进行排序,而不是全部。和st sort智能表订单的默认值仅适用于一列 <table st-table="lista.displayedPublications" st-safe-src="lista.publications"> <thead> <tr> <
<table st-table="lista.displayedPublications" st-safe-src="lista.publications">
<thead>
<tr>
<th st-sort="publication.status" >STATO</th>
<th st-sort="publication.communicationCode">TREAT CD</th>
<th> ... </th>
</tr>
</thead>
<tbody>
<tr ng-repeat="publication in lista.displayedPublications">
<td>{{publication.status}}</td>
<td>{{publication.communicationCode}}</td>
<td>...</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>
<div st-template="ListaTreatement/pagination.html" st-pagination="" st-items-by-page="10"></div>
</td>
</tr>
</tfoot>
</table>
斯塔托
治疗CD
...
{{publication.status}
{{publication.communicationCode}
...
在控制器中:
public publications: PublicationExtended[];
public displayedPublications = [].concat(this.publications);
constructor(...){
new Api($http).getList(me.comunicationType, me.comunicationStatus).then(
function(response : angular.IHttpPromiseCallbackArg<PublicationExtended[]>) {
me.publications = response.data;
}
}
公共出版物:PublicationExtended[];
public displayedPublications=[].concat(this.publications);
构造函数(…){
新的Api($http).getList(me.comCommunicationType,me.comCommunicationStatus)。然后(
函数(响应:angular.ihttpromisecallbackarg){
me.publications=response.data;
}
}
在控制器中使用$filter(“orderBy”)($scope.lista.displayedPublications,[“+status”,“+code”]);
对数据进行排序,然后再将其提供给表。+
和-
可用于设置降序或升序排序顺序。我的控制器中有公共displayedPublications=[].concat(this.publications);请提供处理此表的angularjs代码public displayedPublications=$filter(“orderBy”)([].concat(this.publications),[“+status”,“+code”]);
而不是public displayedPublications=[].concat(this.publications);
可能会奏效。请记住将$filter注入控制器。我使用simply me.publications=$filter('orderBy')(response.data,['+status','+code'])解决了这个问题;既然您提到了OrderBy筛选器,我就使用OrderBy来解决您的问题。您可以使用任何自定义筛选器来对数据进行排序,并且解决方案仍然保持相同的原则。