在页面加载时设置默认的排序图标类,然后在排序图标单击上应用类

时间:2017-06-09 08:31:37

标签: css angularjs

控制器

$scope.propertyName = "";
    $scope.reverse = 'none';
    $scope.sortBy = function (propertyName, val) {
        if ($scope.reverse === 'none') {
            $scope.reverse = false;
        }
        $scope.reverse = !val;
        $scope.propertyName = propertyName;
    };

HTML

<div ng-class="{'sort': (reverse === 'none'), 'sort desc': reverse, 'sort asc': !reverse}" ng-click="sortBy('DivisionIndex',reverse)">

但在页面加载时,sort desc类适用(reverse = true)。我需要在页面加载时设置类sort,然后将reverse的值更改为boolean,以便在排序图标上应用css。

2 个答案:

答案 0 :(得分:0)

简单,如果你想要类onload只需在class属性中提及它,然后如图所示更改ng-class

<div class="sort" ng-class="{'desc': (reverse===true), 'asc': (reverse===false)}" ng-click="sortBy('DivisionIndex',reverse)">

如果您只是在使用reverse添加课程时提及ng-class,则字符串"none"将变为true,并且还会添加"sort desc"课程。因此,您必须检查我的答案中显示的类型和值。

答案 1 :(得分:0)

您可以使用terenary运算符:

<div class="sort" ng-class="{ reverse ? 'desc': 'asc'}" ng-click="sortBy('DivisionIndex',reverse)">