Hon*_*iao 45 typescript angular
在Angular 1中,下面的代码运行良好.
<div ng-class="$varA === $varB ? 'css-class-1' : 'css-class-2'">
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在Angular 2中做类似的事情时.它不起作用.
我已经添加了 directives: [NgClass]
<div [ngClass]="varA === varB ? 'css-class-1' : 'css-class-2'">
Run Code Online (Sandbox Code Playgroud)
我应该怎么写Angular 2,谢谢!
编辑:这是我的错误,我不小心添加{ }到了整体varA === varB ? 'css-class-1' : 'css-class-2'.所以ngClass仍然可以在Angular 2中使用三元运算符.
Mar*_*cok 91
是.你写的是什么作品:
<div [ngClass]="varA === varB ? 'css-class-1' : 'css-class-2'">
Run Code Online (Sandbox Code Playgroud)
右侧表达式的结果必须评估为以下之一:
也许你的代码中有其他错误?
Gün*_*uer 18
<div [ngClass]="{'css-class-1':varA === varB, 'css-class-2': varA !== varB}">
Run Code Online (Sandbox Code Playgroud)
另请参见https://angular.io/api/common/NgClass
您可以尝试以下方法......
对于三元运算符使用:
[ngClass]="condition1==condition2?'class-1':'class-2'"
Run Code Online (Sandbox Code Playgroud)
多条件使用:
[ngClass]="{'class-1':condition1==condition2, 'class-2': condition3==condition4}"
Run Code Online (Sandbox Code Playgroud)
谢谢...
| 归档时间: |
|
| 查看次数: |
62364 次 |
| 最近记录: |