当前位置: 首页 > 知识库问答 >
问题:

AngularJS ngClass条件

上官自明
2023-03-14

有什么方法可以使ng-class这样的东西成为条件表达式吗?

例如,我尝试了以下内容:

<span ng-class="{test: 'obj.value1 == \'someothervalue\''}">test</span>

这段代码的问题是,无论obj.value1是什么,类测试总是应用于元素。这样做:

<span ng-class="{test: obj.value2}">test</span>

只要obj.value2不等于真实值,则不应用中的类。现在我可以通过以下操作来解决第一个示例中的问题:

<span ng-class="{test: checkValue1()}">test</span>

其中CheckValue1函数如下所示:

$scope.checkValue1 = function() {
  return $scope.obj.value === 'somevalue';
}

我只是想知道这是否是ng-class的工作方式。我也在构建一个自定义指令,我想在那里做类似的事情。然而,我找不到观看一个表情的方法(而且也许那是不可能的和它这样工作的原因)。

这里有一个plnkr来说明我的意思。

共有1个答案

壤驷安和
2023-03-14

你的第一次尝试几乎是正确的,它应该可以工作没有引用。

{test: obj.value1 == 'someothervalue'}

这是一个PLNKR。

ngClass指令将适用于任何计算truthy或falsey的表达式,有点类似于Javascript表达式,但有一些区别,您可以在这里阅读。如果您的条件太复杂,那么您可以使用返回truthy或falsey的函数,就像您在第三次尝试中所做的那样。

只是为了补充:您还可以使用逻辑运算符来形成逻辑表达式,如

ng-class="{'test': obj.value1 == 'someothervalue' || obj.value2 == 'somethingelse'}"
 类似资料:
  • 问题内容: 我正在尝试将其编译。.我有一个带有firstname和lastname字段的表,并且我有一个字符串,例如“ Bob Jones”或“ Bob Michael Jones”等。 事实是,例如我姓鲍勃,姓迈克尔·琼斯 所以我想 但是它说未知列“ firstlast” ..有人可以帮助吗? 问题答案: 您提供的别名用于查询的输出-它们本身在查询中不可用。 您可以重复表达: 或包装查询

  • s-if 通过 s-if 指令,我们可以为元素指定条件。当条件成立时元素存在,当条件不成立时元素不存在。 提示:当不满足条件时,San 会将元素从当前页面中移除,而不是隐藏。 <span s-if="isOK">Hello San!</span> s-if 指令的值可以是任何类型的表达式。 <span s-if="isReady && isActive">Hello San!</span> 提

  • 条件操作符 对于依赖于特定条件的用例,这些操作符可以做到这一点。 内容 defaultIfEmpty every

  • 我需要 在Hibernate条件中。由于这个问题,我知道如何将分组结果作为的列表: 我不知道如何添加HAVING子句。我想,它类似于,但是我如何引用计数呢? 有没有办法在查询中引用结果元组元素?

  • 以下是在MariaDB中使用CRUD 操作的条件列表。条件通常与语句一起使用。参考下表列出的一部分条件 - 编号 条件 描述 1 在满足个以上的条件时使用。 2 在满足任何一个条件时使用。 3 当条件满足时使用它。 4 在子句中使用简单的模式匹配(通配符)。 5 在子句中使用正则表达式匹配 6 它用作多个条件的替代 7 它用来否定一个条件 8 它用于测试一个值。 9 它用来测试一个非值。 10 它

  • 条件熵 参考 https://zh.wikipedia.org/wiki/条件熵 假设有随机变量$$(X,Y)$$,其联合概率分布为:$$P(X=x_i, Y=y_i)=p_{ij}$$ $$P(X=x_i, Y=y_j)=p_{ij}$$,$$i=1,2,...,n; j=1,2,...,m$$ 条件熵描述了在已知随机变量$$X$$的值的前提下,随机变量$$Y$$ 的信息熵还有多少。同其它的信息

  • 条件 条件提供了语言的刘控制,否则就是纯粹的静态语言。提供的条件有导入、混入、函数以及更多。下面的例子纯粹示例,并不是使用建议。 if / else if / else 这没什么好说的,跟一般的语言一致,if表达式满足(true)的时候执行后面语句块,否则,继续后面的else if或else. 下面这个例子,根据overload的条件,决定是使用padding还是margin. overload-

  • 在编程时,我们遇到一些场景,我们必须从给定的路径集中选择路径。 在这种情况下,我们需要条件语句。 条件语句有助于我们做出决策并执行正确的操作。 以下是大多数编程语言中的典型决策结构的一般形式。 JavaScript支持if语句(包括其变体)和switch语句。 除了JavaScript中提供的条件之外,CoffeeScript还包括unless声明,否定if,甚至更多。 以下是CoffeeScri