【发布时间】:2018-01-05 23:31:00
【问题描述】:
我有一个扩展面板组,我正在尝试将一个 CSS 类应用到活动面板:
<mdl-expansion-panel-group>
<mdl-expansion-panel *ngFor="let task of tasks" [ngClass]="{'active': task.id == selectedTask}">
<mdl-expansion-panel-header>
<mdl-expansion-panel-header-list-content><h6>{{task.what_task}} {{task.id}}</h6></mdl-expansion-panel-header-list-content>
</mdl-expansion-panel-header>
<mdl-expansion-panel-content>
<mdl-expansion-panel-body>
<button mdl-button mdl-button-type="raised" mdl-colored (click)="selectTaskToEdit(task)">
Edit
</button>
</mdl-expansion-panel-body>
</mdl-expansion-panel-content>
</mdl-expansion-panel>
</mdl-expansion-panel-group>
css 类active 的背景颜色设置为黄色。在我的组件中,我打印了console.log(this.selectedTask==task.id),结果是真的,但是我的课程没有被应用。
我的组件:
selectTaskToEdit(task){
this.task=task;
this.selectedTask=task.id;
console.log(this.selectedTask==task.id)
}
和css:
.active {
background-color: yellow;
}
我做错了什么吗?
更新:我可以使用[style.background-color]="task.id == selectedTask ? 'yellow': null " 解决它,但是我想知道是否有正确的方法来处理 ngClass
【问题讨论】:
-
您能告诉我们
selectTaskToEdit代码吗?你在哪里设置selectedTask? -
你在哪里指定
activecss 类? -
background-color: yellow !important;能否请您尝试在最后添加!important并让我知道它是否有效。
标签: angular angular2-mdl