Angular ng-repeat groupBy and Keep order
Angular ng-repeat groupBy and Keep order
Im正在使用此筛选器https://github.com/a8m/angular-filter#groupby这样订购我的数据,效果很好:
<div ng-repeat="(key, value) in tags.tags.objects | groupBy:'category.name' ">
现在我试着按类别或顺序来保持这些组的顺序。
这可能吗?
我试着这样做:
<div ng-repeat="(key, value) in tags.tags.objects | groupBy:'category.name' | orderBy:'category.order' ">
但它没有任何区别
orderBy
筛选器不适用于ngRepeat
中的对象。所以,你能做的是这样的事情:
<!--
Note: toArray filter also attaches a new property $key
to the value containing the original key that was used in the object.
-->
<div ng-repeat="tags in tagsList | groupBy:'prop' | toArray:true | orderBy:'$key'">
Group name: {{ tags.$key }}
<p ng-repeat="tag in tags | orderBy:'prop'">
{{ tag.name }}
</p>
</div>
请参阅:toArray filter
groupBy应始终是ng repeat中的最后一个。。所以先设置orderBy,最后设置groupBy,然后可以使用track-by-$index所以正常的ng重复将是
ng-repeat="item in items orderBy:'price' | groupBy:'name' track by $index"
希望它能帮助它,即使它有点晚!
对于djsiz的部分答案(不需要跟踪,它缺少一个管道),您可以这样做:
<div ng-repeat="(key, value) in tags.tags.objects | orderBy:'category.order' | groupBy:'category.name'">
groupBy创建了一个对象,但orderBy需要一个数组。。。如果你在分组之前按顺序订购,它应该正确排序
https://jsfiddle.net/r0m4n/kfho6r26/
相关文章:
- Css order属性不't在Jquery设置时更新
- Angular ng repeat order将多个字段作为一个字段
- Jquery keep Alive/任何客户端交互
- MongoDB Querying: Order & Export Results
- SQL应该查询's ORDER BY列写入JS代码中
- 使用js:order<创建表时出现问题;tr>并且<td>
- AngularJs ng-repeat order通过不适用于嵌套对象属性
- Ajax CollapsiblePanelExtender Keep state on Postback
- RequireJS plugin( order.js )
- Javascript/JQuery Execution order
- order通过不使用带有破折号的对象名称的angularjs工作
- Hack to keep history.pushState ie8-9
- Javascript Q Promise Sequence Order with Arguments
- Order ofQuery with AJAX PHP and MySQL
- Jquery replaceWith keep onclick
- 从表格中选择PayPal或Purchase Order
- Keep focus on Ember.TextField
- Titanium sqlite ORDER BY statement
- keep:将鼠标悬停在拖动jquery元素上
- Angular ng-repeat groupBy and Keep order