javascript - ngClass - 创建一个包含 Angular 表达式的类名

标签 javascript angularjs ng-class angularjs-ng-class

我想根据对 Angular 表达式的求值创建类名,但似乎 Angular 正在从最终编译的类中删除这些表达式。遍历单元格时,假定以下代码:

<td ng-class="{'label{{cell.count}}': !!cell.count}"></td>

我的目标是,当 cell.count = 1 时,结果类将是“label1”,当 cell.count = 2 时,结果类将是“label2”,等等。 实际上,angular 会丢弃最终类中的表达式 - 只要 !!cell.count,无论计数如何,我都会得到类“标签”。我怎样才能做到这一点?

最佳答案

试试这个:

<td ng-class="{'label'+cell.count: !!cell.count}"></td>

如果它变得太复杂,您还可以将整个对象移出到作用域中的一个函数中。

<td ng-class="getCellClass()"></td>

然后:

$scope.getCellClass = function() { ... }

您的问题是 {{...}} 替换在这里不合适。您必须使用 Angular 表达式来创建对象,或者如果您在作用域上调用方法,则可以执行创建它所需的任何 javascript。

关于javascript - ngClass - 创建一个包含 Angular 表达式的类名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32505683/

相关文章:

javascript - 如何修复 prepare statement failed with error : "1" - using SQLite?

javascript - 如何在背景图片上添加文字

angular - 将切换 ngclass 应用于多个按钮

javascript - Angular 2根据应用于div的类调用函数

javascript - 在 JavaScript 中合并多个相同长度的对象数组

javascript - 如何检查asp中的哪些项目:Treeview are checked client side

javascript - 为什么我的 .off() 事件处理程序没有关闭该功能?

javascript - Highcharts 中是否有关于完全显示标签的可用选项?

javascript - 从指令内部动态设置类不能与 nganimate 一起正常工作

javascript - 模块构建失败(来自./node_modules/vue-loader/dist/index.js): TypeError: Cannot read property 'styles' of undefined at Object. loader