拨开荷叶行,寻梦已然成。仙女莲花里,翩翩白鹭情。
IMG-LOGO
主页 文章列表 为什么在以下情况下重复评估属性的情况下ngClass会失败?

为什么在以下情况下重复评估属性的情况下ngClass会失败?

白鹭 - 2022-01-24 1964 0 0

我以组件的形式做了一个可重用的输入,我使用 ngClass 来设定不同的背景。它在 5 个场景中的 4 个中运行良好。有一种情况,名为“estados”的评估变量等于“pagado”,但它不会应用其对应的类。我不知道为什么。

请看看这个:

HTML:

<ion-item  lines="none" 
[ngClass]="{colorEvaluacion: estado === 'enEvaluacion', colorAprobado: estado === 'aprobado', colorPagado: estado === 'pagado', colorPagado: estado === 'aprobadoParcial', colorRechazado: estado === 'rechazado'}">
  <ion-icon name="time" ></ion-icon> //modificar el name tambien
  <ion-label >{{texto}}</ion-label>
</ion-item>

萨斯:

.iconEvaluacion {
    color: #F39837;
}

.colorEvaluacion {
    --background: #FDF6E9;
}

.iconAprobado {
    color: #329CDA;
}

.colorAprobado {
    --background: #ECF5FF;
}

.iconPagado {
    color: #78A856;
}

.colorPagado {
    --background: #E9F8E6;
}

.iconRechazado {
    color: #EC3F5A;
}

.colorRechazado {
    --background: #FFEDED;
}

TS:

从'@angular/core'汇入{组件,OnInit,输入};

@Component({
  selector: 'app-chip-estados',
  templateUrl: './chip-estados.component.html',
  styleUrls: ['./chip-estados.component.scss'],
})
export class ChipEstadosComponent implements OnInit {

  @Input() estado: string;
  @Input() texto: string;

  constructor() { }

  ngOnInit() {}

}

这是父级的 HTML,我在其中呼叫它并通过资料系结将不同的“estados”属性从父级传递给子级。

  <app-chip-estados texto="En Evaluación" estado="enEvaluacion"></app-chip-estados>
  <app-chip-estados texto="Aprobado" estado="aprobado"></app-chip-estados>
  <app-chip-estados texto="Pagado" estado="pagado"></app-chip-estados>
  <app-chip-estados texto="Aprobado Parcial" estado="aprobadoParcial"></app-chip-estados>
  <app-chip-estados texto="Rechazado" estado="rechazado"></app-chip-estados>

uj5u.com热心网友回复:

原因低于[ngClass]系结内的值:

colorPagado: estado === 'pagado', colorPagado: estado === 'aprobadoParcial'

当 "estados" 等于 "pagado" 时,colorPagado: estado === 'pagado'条件导致类被添加,但colorPagado: estado === 'aprobadoParcial'条件评估为false并因此导致洗掉相同的类colorPagado

如果要在 "estados" 等于 "pagado" 或 "aprobadoParcial" 时应用相同的类,则可以将表达式修改为:

colorPagado: (estado === 'pagado' || estado === 'aprobadoParcial')
标签:

0 评论

发表评论

您的电子邮件地址不会被公开。 必填的字段已做标记 *