我对如何使用ngControl
在表单中实现单选按钮有疑问以下是模板的代码:
<div class="form-group">
<label class="radio-inline" *ngFor="#size of formModel.sizes">
<input type="radio" ngControl="ourSize" #ourSize="ngForm" value="{{ size }}" >
{{ size }}
</label>
</div>
这是模型的代码:
this.formModel = {
sizes: ['asd1', 'asd2', 'asd3']
}
P.S。我已经检查了另一个答案Angular2 - Radio Button Binding 但它没有帮助我(
答案 0 :(得分:3)
您需要以这种方式使用无线电输入:
@Component({
selector: 'my-app',
template: `
<form>
<div class="form-group">
<label class="radio-inline" *ngFor="#size of formModel.sizes; #i=index">
<input type="radio" [(ngModel)]="formModel.sizes[i]" #ctrl="ngForm" ngControl="sizeCtrl" name="size"/>
{{ size.value }}
</label>
</div>
Test: {{ctrl?.value}}
Values: {{formModel | json}}
</form>
`
})
export class AppComponent {
constructor() {
this.formModel = {
sizes: [
new RadioButtonState(true, 'asd1'),
new RadioButtonState(false, 'asd2'),
new RadioButtonState(false, 'asd3')
]
};
}
}
单选按钮状态根据选择的内容进行更新。似乎控件不能在这个级别上使用......