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

Angular:带有*ngClass的条件类

寿飞飙
2023-03-14

我的角码出了什么问题?我得到以下错误:

无法读取BrowserDomAdapter.RemoveClass中未定义的属性“Remove”

<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>

共有2个答案

窦弘义
2023-03-14

[ngClass]=...而不是*ngClass

*仅用于结构指令的速记语法,例如,您可以在其中使用

<div *ngFor="let item of items">{{item}}</div>

而不是较长的等效版本

<template ngFor let-item [ngForOf]="items">
  <div>{{item}}</div>
</template>

另请参见https://angular.io/docs/ts/latest/api/common/index/ngclass-directive.html

<some-element [ngClass]="'first second'">...</some-element>
<some-element [ngClass]="['first', 'second']">...</some-element>
<some-element [ngClass]="{'first': true, 'second': true, 'third': false}">...</some-element>
<some-element [ngClass]="stringExp|arrayExp|objExp">...</some-element>
<some-element [ngClass]="{'class1 class2 class3' : true}">...</some-element>

另请参见https://angular.io/docs/ts/latest/guide/template-syntax.html

<!-- toggle the "special" class on/off with a property -->
<div [class.special]="isSpecial">The class binding is special</div>

<!-- binding to `class.special` trumps the class attribute -->
<div class="special"
     [class.special]="!isSpecial">This one is not so special</div>
<!-- reset/override all class names with a binding  -->
<div class="bad curly special"
     [class]="badCurly">Bad curly</div>
融焕
2023-03-14

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'"
 类似资料:
  • 问题内容: 我的Angular代码有什么问题?我正进入(状态: 的HTML 问题答案: Angular版本2,…,9提供了几种有条件地添加类的方法: 第一类 第二类 和多个选项: 第三类 四类

  • 我是从JSON文件而不是数据库获取数据。我试图根据JSON中的状态值为图标赋色,例如[if green?class1:class2]下面是我的代码。 我的HTML文件 下面是我的JSON文件。 这是我的CSS **我无法更改状态图标的颜色。我得到了这个错误** 错误类型错误:无法读取未定义的属性“status”

  • 问题内容: 有什么方法可以表达条件表达式吗? 例如,我尝试了以下方法: 此代码的问题在于,无论如何,始终将类测试应用于元素。这样做: 只要不等于真实值,就不会应用该类。现在,通过执行以下操作,我可以在第一个示例中解决此问题: 该函数如下所示: 我只是想知道这是否应该工作。我还在建立一个自定义指令,在其中我想做类似的事情。但是,我找不到观察表达式的方法(也许这是不可能的,以及它如此工作的原因)。 这

  • 有什么方法可以使这样的东西成为条件表达式吗? 例如,我尝试了以下内容: 这段代码的问题是,无论是什么,类测试总是应用于元素。这样做: 只要不等于真实值,则不应用中的类。现在我可以通过以下操作来解决第一个示例中的问题: 其中函数如下所示: 我只是想知道这是否是的工作方式。我也在构建一个自定义指令,我想在那里做类似的事情。然而,我找不到观看一个表情的方法(而且也许那是不可能的和它这样工作的原因)。 这

  • 问题内容: 对于似乎很简单的问题,我找不到解决方案。假设有2种实体类: 如何创建一个标准查询以返回包含至少一个满足给定条件(例如b.text =’condition’)的B实体的所有A? 问题答案: 我认为此链接可能很有用:http : //mikedesjardins.net/2008/09/22/hibernate-criteria- subqueries-exists/ 它包含以下有关如何创

  • 我有一个带有分区键和排序键的表,还有另外两列。我无法在使用javaScript AWS SDK的DynamoDB中使用FilterExpression获得多个条件下的项。有人能提供正确的代码来检索FilterExpression中有多个条件的数据吗?我的代码如下: