在 Angular js 中使用 ng-class 中的函数

2024-02-01

我在用ng-class用于添加 CSS 类。尽管有很多关于此的文章,但我无法添加函数调用ng-class.

我有以下表达。

ng-class="{'highlighter-row-Class' : (file.id == 1 && file.processed),
    'bold-row-Class' : lastSelectedResumeId == file.attributes.name, 
    'failed-doc': !file.processed}"

现在,可以添加多个类。不过,我想在这里再添加一个条件,它将调用一个方法并返回一个类名:

$scope.getclass = function() {
  return 'someclass';
}

我的尝试使用了这种方法ng-class在最后一个条件之后,但它不起作用。那么,谁能告诉我如何正确地做到这一点ng-class?


另一种尝试(建议后):

ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed),
    'bold-row-Class' : lastSelectedResumeId == file.attributes.name, 
    'failed-doc': !file.processed }, getClassForHrms(file)]"

功能:

$scope.getClassForHrms = function (file) {
    if (file.attributes.hrmsMandatoryFieldsMissing) {
        return "missingfieldspresent";
    } else if (file.attributes.isDocumentDuplicated) {
        return "documentduplicate";
    } else if (!file.attributes.isDocumentDuplicated) {
        return "documentuploadfailed";
    }
};

使用的CSS:

.missingfieldspresent {
  color: red;
}
.documentduplicate {
  color: purple;
}
.documentuploadfailed {
  color: deeppink;
}

这就是 HTML 呈现的结果

<tr ng-repeat="file in processResumeFiles" ng-class="[{'highlighter-row-Class' : (file.id == 1 &amp;&amp; file.processed), 
    'bold-row-Class' : lastSelectedResumeId == file.attributes.name, 
    'failed-doc': !file.processed }, getClassForHrms(file)]" 
    class="ng-scope [object Object] documentduplicate">

你需要一个array类,其中数组的一个元素可以是具有条件的类的对象,另一个元素是函数调用。 Asimple例子是:

ng-class="[{'some_class' : condition}, function_class()]"

这是一个演示:

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
  $scope.bb = function() {
    return "b";
  }
});
.a {
  color: #999999;
}

.b {
  background-color: #F1F1F1;
}

.c {
  font-size: 30px;
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">

  <br><input type="checkbox" ng-model="aa" /> A: color : #999999
  <br><input type="checkbox" ng-model="cc" /> C: font-size : 30px

  <div ng-class="[ bb(), {'a':aa, 'c':cc} ]">
    <p>Testing classes</p>
  </div>

</div>

对于你的例子,我认为你需要:

ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed) 
        ,'bold-row-Class' : lastSelectedResumeId == file.attributes.name, 
       'failed-doc': !file.processed}, getclass()]"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Angular js 中使用 ng-class 中的函数 的相关文章

  • R Shinydashboard 自定义 CSS 到 valueBox

    我一直在尝试将 valueBox 的颜色更改为自定义颜色 超出 validColors 中可用的颜色 但一直无法这样做 我知道有一种方法可以使用标签来包含自定义 CSS 但是我无法将它们放在正确的位置 ui lt dashboardPage
  • Cosmos DB Mongo API 如何管理“请求率很大”情况

    我有以下代码 async function bulkInsert db collectionName documents try const cosmosResults await db collection collectionName
  • html canvas动画卡顿

    谁能解释为什么提供的画布动画断断续续 我创建了一个测试存根来演示该问题 我在桌面上的 FF Chrome IE 以及 Android 上的 FF 和 Chrome 中看到了卡顿现象 口吃是由于垃圾收集造成的吗 似乎 raf 在每次调用时都会
  • GWT 主题/模板 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在使用 GWT 开发一个应用程序 尽管 GWT 是基于 JAVA 的媒介 但外观和感觉只能通过 CS
  • JavaScript:常量属性

    在javascript中 我可以将对象的属性声明为常量吗 这是一个示例对象 var XU Cc Components classes or function aXU this Cc Components classes var XU new
  • “|”是什么意思(单管道)在 JavaScript 中做什么?

    console log 0 5 0 0 console log 1 0 1 console log 1 0 1 为什么0 5 0返回零 但任何整数 包括负数 都返回输入整数 单管道 有什么作用 这是一个按位或 https developer
  • Firebase 身份验证在 iOS 登录时卡住,没有错误

    我已经使用电子邮件和密码设置了 firebase 身份验证登录的最基本实现 firebase auth signInWithEmailAndPassword email password then gt console log Logged
  • 将输入中每个单词的第一个字符设为大写

    我想知道如何在输入区域自动生成单词的第一个字符 目前我的代码是 Name
  • 使用 CSS 覆盖透明 div 中的不透明文本

    我试图使透明 div 内的文本没有不透明度 也就是全黑 div style background 3cc p style background 000 This text should be all black p div 只用 CSS 就
  • Twitter bootstrap 3表单水平和单行多个输入列

    我需要将多列输入放在单行中 如下所示 我通过将多个输入分组为一个来做到这一点form group 但是这样我不能使用has error class div class form group div
  • 如何取消 AjaxForm 上的提交

    我正在使用 jQuery 插件 ajax 形式 我尝试实现这样的东西 MyFormID ajaxForm dataType json resetForm true beforeSubmit function validateData ret
  • JavaScript 中的实时摩尔斯电码转换器

    在看到谷歌关于莫尔斯电码 gmail 的愚人节笑话后 我想我应该尝试用 javascript 创建一个实时莫尔斯电码转换器 我正在使用正则表达式和替换将莫尔斯电码更改为字符 例如 replace g a replace g r 我遇到的问题
  • 不使用控件时,视频元素在 Chrome 中消失

    So I think这是一个浏览器错误 它出现在一个更复杂的设计 网站中 但我已经进行了很好的尝试 简化了我的代码和设计等 并发现了以下内容 嵌入时
  • jQuery:单击外部元素以“关闭”使用toggleClass 出现的菜单

    我已经构建了一些导航 针对移动网络 它使用 jQuery 中的toggleClass 方法来隐藏和显示菜单 单击 MENU 图标 按钮可在菜单 div 上打开和关闭类 active 显示 隐藏 我一直在拼命寻找一种通过单击菜单外部 页面上的
  • 水平对齐输入字段

    我正在尝试获取一个输入字段 并且它与同一水平线上的关联提交按钮相关 但事实证明这是一个挑战 这是我的代码
  • 在方法内部执行方法

    我目前正在 FreeCodeCamp 中进行 JavaScript 练习 我的代码应该使用的测试用例之一是函数调用 如下所示 addTogether 2 3 这是我得到的基本功能 function addTogether return 当我
  • p5 向量减法“sub”返回错误

    我一直在尝试将 p5 草图上传到 React 构建中 使用react p5 wrapper 我能够成功在屏幕上渲染画布 但是 某些矢量函数会导致错误 var distance this position dist ball position
  • D3 将现有 SVG 字符串(或元素)追加(插入)到 DIV

    我到处寻找这个问题的答案 并找到了一些我认为可能有用的资源 但最终没有让我找到答案 这里有一些 外部SVG http bl ocks org mbostock 1014829 嵌入SVG https stackoverflow com qu
  • 如何获得 JavaScript 阶乘程序的循环来显示所使用的工作?

    你好 我面临着用 JavaScript 编写一个程序的挑战 尽管我对它不太了解 但它要求用户输入一个数字 然后计算该数字的阶乘 我使用了已经提出的问题并设法使计算正常工作 但无法获得所需的输出 我必须在以下输出中获取它 而不使用任何花哨的库
  • 用javascript调用外部网页(跨域)

    我正在尝试使用以下网络服务来验证提要这个问题 https stackoverflow com questions 11996430 check if a url is a valid feed 但浏览器不允许我向另一台服务器发送 ajax

随机推荐

  • constexpr 函数在多个模块中共享

    当我使用 constexpr 函数时 我注意到一个奇怪的行为 我将代码简化为一个简化的示例 从两个不同的翻译单元 模块 A 和 B 调用两个函数 include
  • IllegalStateException: 当前不在 FragmentManager 中

    我知道这听起来像是重复的FragmentStatePagerAdapter IllegalStateException 当前不在 FragmentManager 中 https stackoverflow com questions 112
  • 在我的 Node 应用程序中使用 SSH 连接到 MongoDB

    我的数据库使用 DigitalOcean 我正在尝试在我的节点应用程序中连接到它 我发现了一个名为的 npmtunnel ssh但是我无法连接到它 我的代码如下 它说数据库连接成功 但是当我执行console log mongoose 它显
  • 小程序未显示完整

    我刚刚创建了一个小程序 public class HomeApplet extends JApplet private static final long serialVersionUID 7650916407386219367L Call
  • 为数据层中的实体添加与 .NET Identity ApplicationUser 的关系

    我正在构建一个带有用户登录身份的 NET MVC 应用程序 该应用程序有四层 Web UI 层 参考了我的域和服务层 领域层 没有引用 服务层 参考了我的数据层和领域层 数据层 参考了我的领域层 我想要我的AppUser类与我的数据层中的实
  • 如何使用mongoose动态连接多个mongodb数据库?

    我的项目中有很多数据库 一个是masterDb 其他都是基于masterDb的数据库连接 例如 在验证页面中 用户可以输入 公司 ID 可以使用 masterDb 检查该 公司 ID 如果 ID 存在 则返回特定公司的数据库名称 使用数据库
  • 如何使用Hibernate带来的JBoss日志记录?

    我正在编写使用 Hibernate 的独立 java 应用程序 梅文带来了jboss logging图书馆对我来说 我没有使用 JBoss 问题是 我可以只使用这个库进行日志记录 还是需要下载一些日志记录实现 例如log4j JBoss L
  • 垂直对齐块元素中的文本

    我知道总是有人问垂直对齐 但我似乎无法找到这个特定示例的解决方案 我希望文本在元素内居中 而不是元素本身居中 li a width 300px height 100px margin auto 0 display block backgro
  • 如何在 React 中渲染对象数组?

    你能告诉我如何在 React js 中渲染列表吗 我喜欢这个 https plnkr co edit X9Ov5roJtTSk9YhqYUdp p preview https plnkr co edit X9Ov5roJtTSk9YhqYU
  • Android:如何在缩放和平移后获取图像的X,Y坐标

    我正在开发一个具有缩放和平移图像的应用程序 现在 当用户触摸图像 缩放和平移之后 时 我需要获取图像的 X y 坐标 而不是诸如方法 event getX 和事件之类的屏幕坐标 getX 帮助我 非常感谢 我知道这个问题有点老了 但我面临着
  • 重启浏览器后右键菜单消失

    我正在开发一个 chrome 扩展 我在扩展程序的右键菜单中添加了一个新的菜单项 安装后工作正常 然后当我重新启动浏览器时 新的右键菜单项消失了 但是扩展工作正常 只有新的菜单项消失了 我比较了chrome官方的contextMenu示例
  • 链接不适用于 jsp 和 jquery(如何在 jsp 页面中的锚标记中链接 websiteurl)

    在我的本地主机中它正在工作 但在我的网站上www step2java com the Java核心链接不起作用 部署后 他们将项目根文件夹放入我的 public html 中 例如 Step2java 请告诉我如何解决 我只使用jsp和jq
  • 在移动视口隐藏或删除 div 类?

    首先 我非常了解 CSS 媒体查询 我的问题是这样的 当你将 div 类堆叠在一个 div 中时 例子 div class class1 class2 div 并且您想删除 class2 media 最大宽度 768px 创建以下输出 di
  • Javascript 代理 set() 继承对象上的本地属性

    根据MDN https developer mozilla org en US docs Web JavaScript Reference Global Objects Proxy handler set handler set 可以捕获继
  • 查找空白注入 PHP 文件

    PHP 文件中的空格有时会出现问题 因此我尝试查找符合常见问题标准的文件 我试图递归地查找具有以下一个或两个条件的所有文件 1 不以 a 开头 lt or 特点 and or 2 不以a结尾 gt 字符 除非它确实以右大括号结尾 后跟任意数
  • 连接 VPN 服务器时“Error Domain=NEVPNErrorDomain Code=1 \"(null)\"”

    我在连接到 VPN 服务器时仅第一次收到 Error Domain NEVPNErrorDomain Code 1 null 之后就可以正常工作了 我查过尝试启动 TunnelProvider 网络扩展时出现 NEVPNErrorDomai
  • 如何使用 Magit 中的 git mv ?

    Is there a nice way to call git mv on a file from within magit I know it s possible to run any git command with but this
  • jquery href 和 onclick 分离

    我有这样的代码 a href Link a func2 返回 true 或 false 然后 仅当 function2 返回 true 时才调用 func1 正确的 在学习jquery的过程中 发现onclick不好 而且贬值 所以我将上面
  • 托管私人 Sphinx 文档 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我目前正在使用 Sphinx 为一个相当复杂的 Django 网站编写一些广泛的文档 我一直在内部从事
  • 在 Angular js 中使用 ng-class 中的函数

    我在用ng class用于添加 CSS 类 尽管有很多关于此的文章 但我无法添加函数调用ng class 我有以下表达 ng class highlighter row Class file id 1 file processed bold