Javascript中是否有二进制真值运算符?

时间:2017-06-04 01:30:47

标签: javascript vuejs2

这个表达在Vuejs中意味着什么?

:class="{ expr1: expr2}"

它似乎是一个真值表达式,但Javascript中是否有二进制真值运算符?

2 个答案:

答案 0 :(得分:4)

这是Vue中类绑定的object syntax。如果expr2truthy值,则Vue会将类expr1添加到元素中。

:classv-bind:class的{​​{3}}。

如果该表达式位于div上,例如,

<div :class="{expr1: expr2}"></div>

然后,如果expr2真实,则渲染的输出将是

<div class="expr1"></div>

修改

Truthy值通常是javascript混淆和错误的原因。但是,您可以使用shorthand来确保您拥有true值。

:class="{expr1: true === expr2}"

这样可以避免expr2可能真实而不是true的情况。

strict equality operator

答案 1 :(得分:2)

它是一个类绑定,这意味着当expr2真实时节点将获得类expr1。

阅读:Example