Angular 10 PrimeNG ngClass

问题描述 投票:0回答:1

我目前在三元运算符上遇到了一个问题,所以我有这个代码:

[ngClass]="am.hasAssignmentRequiredData(bal) && am.isDirty(bal) ? '':'disable'"

所以如果日期时间选择器不小于 2000 年,将启用记事本,然后您可以添加详细信息,并继续保存。

但是如果你选择一个晚于 2000 的日期,添加评论,然后将日期返回到小于 2000,你仍然可以继续保存,因为'禁用'不再起作用,就像它只触发一次一样。

有谁知道我该如何缓解这种情况?

我试过了

[ngClass]="am.hasAssignmentRequiredData(bal) && am.isDirty(bal) && isDateValid ? '':'disable'"

但反过来,当日期大于2000时,我无法保存。

angular primeng ng-class
1个回答
0
投票

你需要颠倒顺序,让它成为一个对象,这样也更清楚一点

[ngClass]="{
   disable : am.hasAssignmentRequiredData(bal) && am.isDirty(bal)
"

你不需要 css 类的引号,除非你需要 css 类中的破折号之类的东西。喜欢:

[ngClass]="{
   'some-class' : someVal == anotherVal,
    disable: am.hasAssignmentRequiredData(bal) && am.isDirty(bal)
"
© www.soinside.com 2019 - 2024. All rights reserved.