of-class 多个 class 条件

ng-class multiple class conditions

我有深度级别为 3 的类别列表,因此每个级别都有 class,但是当我 select 级别 3 类别具有“cat”样式时,我需要将“active”class 添加到 li 元素但不知道如何将多个条件添加到 ng-class modlue 我试过这种方式和一些其他方法但没有运气我只需要将 active class 附加到点击的 li 元素 link??

<li ng-repeat="category in categories track by category.id" ng-class="{1: 'root', 2: 'sub', 3: 'cat'}[category.depth] || {cActive: 'active'}[category.id]">
  <a ng-click="setCategory(category.id)">{{category.title}}</a>
</li>

这是我的作用域函数

$scope.setCategory = function ($category.id) {
    $scope.cActive = $category.id;
}

ng-class 需要一个对象,而您的语法正在尝试使用 || 运算符合并两个字符串。那不行。

以下是如何正确使用 ng-class

ng-class="{root: category.depth === 1,
           sub:  category.depth === 2,
           cat:  category.depth === 3,
           active: cActive === category.id}"