2017-04-13 143 views
0

我在FormArray中使用md-checkbox角2 - 材料2复选框 - 复选框[默认]默认

private protocolArray: FormArray = new FormArray([ 
    new FormControl('tcp'), 
    new FormControl('udp') 
]); 

<div class="form-group" formArrayName="protocol"> 
     <md-checkbox formControlName="0" [checked]="true">TCP</md-checkbox> 
     <md-checkbox formControlName="1" [checked]="false">UDP</md-checkbox> 
</div> 

当它呈现时,默认情况下都选中。如果我摆脱md-checkbox并使其正常input type="checkbox"事情完美呈现。

什么给?

回答

0

我发现FormArray只采用布尔值,所以通过将它用'tcp'或'udp'实例化它类型铸造它们到true。我不得不调整我的代码来解决它,但创建具有true或false的数组修复它。

最终代码:

private protocolArray: FormArray = new FormArray([ 
    new FormControl(true), 
    new FormControl(false) 
]); 

<div class="form-group" formArrayName="protocol"> 
    <md-checkbox formControlName="0" >TCP</md-checkbox> 
    <md-checkbox formControlName="1" >UDP</md-checkbox> 
</div>