Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 如何对过滤后的数据进行排序?_Angularjs - Fatal编程技术网

Angularjs 如何对过滤后的数据进行排序?

Angularjs 如何对过滤后的数据进行排序?,angularjs,Angularjs,我有一个数据表,如果我从排序列表中选择“仅颜色”项,我可以过滤并仅显示“颜色”行。我使用以下代码执行此操作: <label>Sort By:</label> <select ng-model="orderProp" class="form-control" tabindex="2"> <option value="title">Title</option> <option value="filename">File

我有一个数据表,如果我从排序列表中选择“仅颜色”项,我可以过滤并仅显示“颜色”行。我使用以下代码执行此操作:

<label>Sort By:</label>
<select ng-model="orderProp" class="form-control" tabindex="2">
  <option value="title">Title</option>
  <option value="filename">File Name</option>
  <option value="class">Classification</option>
  <option value="color">Color Only</option>
</select>
排序依据:
标题
文件名
分类
只有颜色
然后对table元素使用ng repeat:

<tr ng-repeat="item in filtered = (pptData | filter: query | orderBy: orderProp)" ng-if="orderProp !== 'color' || item.color">

但是,如何按标题显示这些颜色结果?我尝试了以下操作,但没有成功:

<option value="{{ 'color' | orderBy:'title' }}">Color Only</option>
仅限颜色
有人有什么想法吗?我的。

试试下面的方法

$scope.reverse = true; // false

<option value="{{ 'color' | orderBy:title:reverse }}">Color Only</option>
$scope.reverse=true;//假的
只有颜色

参考资料:

我会这样做

<tr ng-repeat="item in filtered = (pptData | filter: query | orderBy: [orderProp,'title'])" ng-if="orderProp !== 'color' || item.color">


基本上先按orderProp排序,然后按标题排序。

那么,当用户选择“仅按颜色排序”时,它应该按标题排序吗?这很令人困惑,不是吗?为什么要使用排序组合进行筛选?为什么不使用复选框按颜色过滤,而不是使用排序选项呢?我想他的意思是,当您选择“仅颜色”(即color=true)时,条目应按标题排序。jedanput是正确的。我重新考虑了这个过程,当我这次尝试时,它对我有效。谢谢