首页 > 解决方案 > 用户单击后角度更改复选框的状态

问题描述

我有以下代码应在单击时将选中的值设置为 false:

@Component({
  template: `
    <input type="checkbox" [checked]="checked" (change)="onChange()">
   `
})
export class AppComponent  {

  checked = false;

  onChange() {
    setTimeout(() => {
      this.checked = false;
    }, 1000)
  }

}

问题是,如果我们单击输入并等待一秒钟,它将保持选中状态。为什么会这样?为什么 Angular 不再将其更改为 false ?

标签: javascriptangulartypescript

解决方案


长话短说 Angular 复选框刚刚损坏:问题

但是,如果您想实现此效果,我建议您创建自己的自定义组件,其作用方式与复选框相同。

这是另一个有趣的Checkbox madnes示例尝试与“With track by”和“No track by”块进行交互,看看会发生什么。


推荐阅读