当前位置: 首页 > 面试题库 >

AngularJS模板中的三元运算符

蒋华美
2023-03-14
问题内容

如何使用AngularJS(在模板中)进行三元运算?

最好在html属性中使用一些属性(类和样式),而不是创建和调用控制器的函数。


问题答案:

更新 :Angular
1.1.5添加了一个三元运算符,因此现在我们可以简单地编写

<li ng-class="$first ? 'firstRow' : 'nonFirstRow'">

如果使用的是较早版本的Angular,则有两个选择:

  1. (condition && result_if_true || !condition && result_if_false)
  2. {true: 'result_if_true', false: 'result_if_false'}[condition]

上面的项目2创建具有两个属性的对象。数组语法用于选择名称为true的属性或名称为false的属性,并返回关联的值。

例如,

<li class="{{{true: 'myClass1 myClass2', false: ''}[$first]}}">...</li>
 or
<li ng-class="{true: 'myClass1 myClass2', false: ''}[$first]">...</li>

$ ng在第一个元素的ng-repeat中设置为true,因此上面仅在循环中第一次应用类’myClass1’和’myClass2’。

使用 ng-class时, 有一种更简单的方法:ng-class接受一个表达式,该表达式必须计算以下值之一:

  1. 一串用空格分隔的类名
  2. 类名数组
  3. 类名到布尔值的映射/对象

上面给出了1)的示例。这是3的示例,我认为它读起来更好:

 <li ng-class="{myClass: $first, anotherClass: $index == 2}">...</li>

第一次通过ng-repeat循环,添加了类myClass。第三次($ index从0开始),添加了anotherClass类。

ng-style 采用一个表达式,该表达式必须计算为CSS样式名称与CSS值的映射/对象。例如,

 <li ng-style="{true: {color: 'red'}, false: {}}[$first]">...</li>


 类似资料:
  • 问题内容: 如何使用AngularJS(在模板中)进行三元运算? 最好在html属性中使用一些属性(类和样式),而不是创建和调用控制器的函数。 问题答案: 更新 :Angular 1.1.5添加了一个三元运算符,因此现在我们可以简单地编写 如果使用的是较早版本的Angular,则有两个选择: 上面的项目2创建具有两个属性的对象。数组语法用于选择名称为true的属性或名称为false的属性,并返回关

  • 我需要将值设置为取决于条件的值。 使用 CoffeeScript 执行此操作的最短方法是什么? E、 g.这是我在JavaScript中的做法:

  • 据我所知,PowerShell似乎没有一个针对所谓三元运算符的内置表达式。 例如,在支持三元运算符的C语言中,我可以编写如下内容: 如果PowerShell中并不存在这种情况,那么实现相同结果的最佳方法(即易于阅读和维护)是什么呢?

  • 我对这个错误有意见 错误LNK2019未解析的外部符号"类std::basic_ostream 现在,< code>post所做的就是调用< code >操作符 宣言 定义 它们分别位于文件和中,我要求运算符不是成员函数(用于赋值)。

  • 模板可以支持三元运算符,如: {$status?'发布':'下线'} {$vo.status?'发布':'下线'} {$vo['status']?'发布':'下线'} 支持条件判断表达式: {$a==$b ? 'yes' : 'no'} 条件运算符可以是==、===、!=、!==、>=、<=

  • 请参考:http://www.kancloud.cn/manual/thinkphp/1802