Mat-checkbox [checked] =“ false”不适用于Angular 6

时间:2018-12-12 17:03:18

标签: html angular checkbox

使用checked输入属性时,我的mat-checkbox不会更改值。

<mat-checkbox [checked]="false"
              formControlName="value1">Value1
</mat-checkbox>
  • 请解释checked输入属性的用法,即:将布尔变量传递给 checked输入属性?

  • 是否有使用FormControl进行默认选择的方法 无需在组件上使用checked输入属性?

3 个答案:

答案 0 :(得分:1)

我认为这段代码可以帮助您  html:

 <form [formGroup]="form">
          <mat-checkbox id="Value1" class="Value1" color="primary"
                        formControlName="Value1">Value1</mat-checkbox>
        </form>
        <pre>{{form.value | json}}</pre> 

ts:

this.form = this.fb.group({
         Value1: [false],
        });

答案 1 :(得分:1)

checked属性是一个布尔输入,期望为truefalse

  

@Input()   检查:布尔值

https://material.angular.io/components/checkbox/api

使用[checked]="true"将导致一个选中的框,[checked]="false"将导致未选中的框。


以下是如何检查FormControl

<mat-checkbox [formControl]="checkboxFormControl">Checked Using FormControl</mat-checkbox>

checkboxFormControl = new FormControl(true);

以下情况将在FormControl内使用FormGroup进行检查

<form [formGroup]="myForm">
  <mat-checkbox formControlName="checked">Checked Using formControlName in FormGroup</mat-checkbox>
</form>

  myForm = new FormGroup({
    checked: new FormControl(true)
  })

Stackblitz

https://stackblitz.com/edit/angular-tylt6w?embed=1&file=app/checkbox-overview-example.ts

答案 2 :(得分:-1)

使用两种方式绑定:

<mat-checkbox  [(ngModel)]="checked">{{checked}}</mat-checkbox>

现在在您的组件中。“已选中” ts的值为复选框