Angular mat复选框不检查条件是否为false(仅在双击时)

Angular mat复选框不检查条件是否为false(仅在双击时),angular,angular-material,Angular,Angular Material,我有一个实体,它有一个需要与复选框状态相反的变量 enitity.enabled=true 复选框用于“标记以删除”项目。如果标记并发送表单,则标记的项目将被软删除 考虑到这一点,复选框与此完全相同: {{!entity.enabled} 由于某些原因,enitity.enabled值仅在应用第二次单击时更改 我一直在寻找解决方案,如果这是一个bug,也没有发现任何东西,我来这里寻求您的帮助 你知道如何解决这个问题吗 您不能对ngModel使用否定运算符 <mat-checkbox [

我有一个实体,它有一个需要与复选框状态相反的变量

enitity.enabled=true
复选框用于“标记以删除”项目。如果标记并发送表单,则标记的项目将被软删除

考虑到这一点,复选框与此完全相同:

{{!entity.enabled}
由于某些原因,
enitity.enabled
值仅在应用第二次单击时更改

我一直在寻找解决方案,如果这是一个bug,也没有发现任何东西,我来这里寻求您的帮助

你知道如何解决这个问题吗


您不能对ngModel使用否定运算符

<mat-checkbox [(ngModel)]="entity.enabled">{{!entity.enabled}}</mat-checkbox>

我不能,数据库中的“enabled”是一个列,用于确定实体是否被软删除。我明白了,但使用ngModel时,您只表示希望双向绑定到字段entity.enabled。你不能在这里使用运算符。是的,我的“解决方法”是说服后端团队将“enabled”列替换为“disabled”列。感谢您的反馈;)请看一下我的补充建议。也许这对你有用。将(单击)事件更改为(更改)事件解决了我的两次单击问题。
<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;
}