Heim  >  Fragen und Antworten  >  Hauptteil

angular.js - 怎样实现点击 “分数” 后按分数升序和降序排列?

如下代码实现了刷新自动降序排列,如何实现点击事件,点击后才升序和降序排列?

黄舟黄舟2735 Tage vor610

Antworte allen(2)Ich werde antworten

  • 漂亮男人

    漂亮男人2017-05-15 17:00:26

    首先,楼上说的对,你ng-repeat放错位置了,应该放在tr了。

    ng-click如果只是按分数排序,可以不传参数;如果课程名和脸也排序,那就传参数,调同一个方法。

    分数排序这个地方,controller里声明一个排序标识,升序或者降序都可以,用来记录当前在排序的状态的。出发sort()这个排序方法的时候先判断状态,根据状态来判断排序方式。并把标识放到'score'那个位置,后面那个翻转不要了。

    orderBy:sortFlag
    

    controller里面切换sortFlag的值。

    $scope.sortFlag = 'score'; //声明标识变量并初始化排序方式
    $scope.sort = function(){
        $scope.sortFlag = $scope.sortFlag === 'score' ? '-score' : 'score';
        //'-score' 减号,变换排序方式
    }
    

    Antwort
    0
  • 習慣沉默

    習慣沉默2017-05-15 17:00:26

    你ng-repeat的位置放错了吧,应该放在tr那里吧

    Antwort
    0
  • StornierenAntwort