反向对象的角度顺序数组

时间:2015-07-21 10:28:32

标签: angularjs angular-filters

不能让这个工作:

ggplot(NULL) +
  aes(x = c(1, 2, 3, 1, 2),
      y = c(2, 2, 2, 1, 1),
      fill = colors,
      label = letters) +
  geom_raster() +
  geom_text() +
  scale_fill_manual(values=my_fill)

在我的控制器中:

<tr ng-repeat="serv in servicesAdded |orderBy:predicate:reverse">
      <td>{{serv.stepNumber}}</td>...

我的对象数组看起来像这样

    $scope.predicate = 'stepNumber';
    $scope.reverse = true;
    $scope.order = function (predicate) {
        $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
        $scope.predicate = predicate;
    };

我从来没有出现过相反的顺序(-2首先)我做错了什么?

1 个答案:

答案 0 :(得分:2)

尝试使用&#39; +谓词&#39;,&#39; -predicate&#39;

<tr ng-repeat="serv in servicesAdded |orderBy:usedPredicate">
    <td>{{serv.stepNumber}}</td>...

和Angular代码:

$scope.order = function (predicate) {
        $scope.reverse = ($scope.predicate === predicate) ? !$scope.reverse : false;
        $scope.usedPredicate = $scope.reverse ? '-' : '+' + predicate;
        $scope.predicate = predicate;
    };
  

表达式可以选择带前缀+或 - 来控制升序或降序排序(例如,+ name或-name)。如果没有提供属性(例如&#39; +&#39;)那么数组元素本身用于比较排序的位置。

orderBy Angular docs