angularjs - 带有函数和表达式的 ng-class

标签 angularjs ng-class

我需要使用 ng-class 添加两个类,一个类我通过函数获得,另一个我需要通过表达式获得 -
下面是我正在使用但遇到一些语法错误的代码 -

 <div class="field-icon" ng-class="getFieldClass(entry.entry_type_id) , 'used':  entry_map[entry.guid] > 0" ></div>

如果可以同时使用函数和表达式,什么是正确的语法。

最佳答案

你错了ng-class语法,它应该是 JSON 格式,如 ng-class="{'used': expression2 }" , 表达式将返回 Boolean基于该类将从类中添加或删除 attribute值(value)。

作为您的 getFieldClass方法正在返回类名,然后您可以在 getFieldClass 中移动您的两个类逻辑方法

标记

<div class="field-icon" 
ng-class="getFieldClass(entry)" ></div>

代码
$scope.getFieldClass = function(entry){
   //use entry.entry_type_id here to decide class which is first
   //'text-box-icon' class has been selected on some condition based on entry.entry_type_id
   return {"text-box-icon": true, 'used': $scope.entry_map[entry.guid] > 0};
}

关于angularjs - 带有函数和表达式的 ng-class,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30530855/

相关文章:

javascript - AngularJS:点击显示html表格中行之间的一些信息?

css - AngularJS - 从多个选项更改 1 <div> 上的多个 CSS 类

javascript - 仅在被点击的元素上应用 ng-class

css - 使用 ng-class 指令的 ng-animate

java - 如何在AngularJS中使用JAVA创建的 session

javascript - Angularjs:如何将范围变量传递给指令?

css - 将 BEM CSS 与 Angular 指令结合使用

angularjs - 如何使用给定的 HTML 元素识别复选框值? angularjs-e2e

angular - ngClass 不适用于 Angular 5

angular - ionic 3 动态类 (ngClass)