我正在寻找一种方法,让一个ng-repeat可以过滤或者按顺序排列'或者在id'。 所以像这样:
ng-repeat "cd in cds | filter: !order ? orderBy:'id' : orderBy:'order'"
因此,如果订单为空(没有数据),则应按ID排序,如果订单确实有数据,则应按订单排序' order'。这可能吗?它现在给出两倍相同的数据,条件似乎不起作用
答案 0 :(得分:1)
你很亲密;尝试这样的事情:
ng-repeat "cd in cds | orderBy: (!order ? 'id' : 'order')"
答案 1 :(得分:1)
ng-repeat="cd in cds| orderBy: (ordering != null ? 'order' : 'id')"
这个控制器(必须添加$ scope.ordering):
function GetCDS() {
$http({
method: 'Get',
url: "/cds"
})
.success(function (data, status, headers, config) {
$scope.cds = data;
$scope.ordering = data[0].order;
})
.error(function (data, status, headers, config) {
$scope.message = 'Unexpected Error';
});
}