javascript - Angular:带有 *ngClass 的条件类

标签 javascript css angular angular-template angular-ng-class

我的 Angular 代码有什么问题?我收到以下错误:

Cannot read property 'remove' of undefined at BrowserDomAdapter.removeClass

<ol>
  <li *ngClass="{active: step==='step1'}" (click)="step='step1'">Step1</li>
  <li *ngClass="{active: step==='step2'}" (click)="step='step2'">Step2</li>
  <li *ngClass="{active: step==='step3'}" (click)="step='step3'">Step3</li>
</ol>

最佳答案

Angular 版本 2+ 提供了几种有条件地添加类的方法:

输入一个

    [class.my_class] = "step === 'step1'"

类型二

    [ngClass]="{'my_class': step === 'step1'}"

和多个选项:

    [ngClass]="{'my_class': step === 'step1', 'my_class2' : step === 'step2' }"

类型三

    [ngClass]="{1 : 'my_class1', 2 : 'my_class2', 3 : 'my_class4'}[step]"

类型四

    [ngClass]="step == 'step1' ? 'my_class1' : 'my_class2'"

您可以在 documentation page 上找到这些示例

关于javascript - Angular:带有 *ngClass 的条件类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46344866/

相关文章:

css - 如何使用 css 将元素放在屏幕顶部的正上方?

javascript - 当 li 位于 Jquery 中列表项的子级别时,如何在 li 中获取空 ol?

javascript - 如何获取 Dom 对象的内容包括自身?

javascript - SoundManager2 WaveFormData 和 PeakData 返回 0

javascript - 是否可以透视子 div?

html - 水平对齐div

node.js - NPM 无法安装 @angular/cli 并显示 "File already exists"

css - ng-bootstrap Accordion 标题悬停效果没有下划线

typescript - $event 对象在 Angular 2 中到底做什么?

javascript - PHP 不生成 Excel 文件