我有一个实体,其变量需要与复选框状态相反。
enitity.enabled = true
复选框位于"标记为删除"这个项目。如果您标记并发送表单,则标记的项目将被软删除。
考虑到这一点,复选框完全如下:
<mat-checkbox [(ngModel)]="!entity.enabled">{{!entity.enabled}}</mat-checkbox>
出于某种原因,只有在第二次点击时才会更改enitity.enabled
值。
我看了很多解决方案,或者如果这是一个错误,我找不到任何帮助。
知道如何解决这个问题吗?
答案 0 :(得分:2)
您不能将否定运算符与ngModel一起使用。
<mat-checkbox [(ngModel)]="entity.enabled">{{!entity.enabled}}</mat-checkbox>
以这种方式试试。
另一种方法是对点击或变更事件做出反应
HTML
<mat-checkbox [checked]="entity.enabled" (change)="onChange()">{{!entity.enabled}}</mat-checkbox>
打字稿
private onChange(): void {
this.entity.enabled = !this.entity.enabled;
}
private onClick(): void {
this.entity.enabled = !this.entity.enabled;
}