【发布时间】:2019-05-04 08:09:44
【问题描述】:
在连续点击 5 次按钮后尝试将 ngClass 添加到 div。
这是位于 app.component.html 文件中的按钮:
<button class="btn btn-primary" (click)="onToggleDetails()">Display Details</button>
<p *ngIf="showSecret">Secret Password = tuna</p>
<div *ngFor="let logItem of log"
[ngStyle]="{backgroundColor: logItem >= 5 ? 'blue' : 'transparent'}"
[ngClass]="{'white-text': logItem >= 5}"
>{{ logItem }}</div>
这里是 app.component.ts 文件:
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'], *** EDIT ***
styles: [`
h3 {
color: dodgerblue;
}
`]
})
export class AppComponent {
username1 = '';
showSecret = false;
log = [];
onToggleDetails(){
this.showSecret = !this.showSecret;
this.log.push(this.log.length + 1);
}
}
这里是 app.component.css
.white-text{
color: white;
}
目前,单击第 5 次按钮后,logItem 背景仍为蓝色。我可以检查控制台并看到 .white-text 类已添加,但文本仍为黑色。
这是它的外观:
当我检查元素时,您可以看到已添加类:
我是 Angular 的新手,我正在学习 udemy 课程并被困在这里。除非我解决这个问题,否则我无法进行下一部分。
【问题讨论】:
-
在检查器中选择元素并检查其样式,看看是否有另一个 CSS 选择器覆盖了
.white-text中设置的颜色。 -
改为检查 logItem 的索引
-
在此之前检查硬编码值,如
5===5
标签: angular typescript