【发布时间】:2018-01-02 22:05:52
【问题描述】:
我需要
[(ngModel)]="salutation" #salutation="ngModel"进行验证,这会阻止我的单选按钮在加载时被选中compareOptions() 返回 true
使用版本 angular4.1.2
<app-validation-message [validation-control]="salutation">
<app-styled-input [title]="'Male'" >
<div class="custom-radio" >
<input id="female" name="salutation" type="radio" [value]="options[0].id" [checked]="this.compareOptions(options[0]))"
[required]="required" [(ngModel)]="salutation" #salutation="ngModel">
<label for="female"><span></span>{{options[0]['title']}}</label>
</div>
<div class="custom-radio margin-left-10" >
<input id="male" name="salutation" type="radio" [value]="options[1]"
[checked]="this.compareOptions(options[1])"
[required]="required" [(ngModel)]="salutation" #salutation="ngModel">
<label for="female"><span></span>{{options[1]['title']}}</label>
</div>
</app-styled-input>
</app-validation-message>
组件:
compareOptions(obj:any){
return obj.id===this.personalData.salutation.id;
}
【问题讨论】:
-
作为旁注,请避免在模板中调用方法,它们会在每次角度运行变化检测时触发,这可能经常。改用模板中的变量:)
标签: angular typescript radio-button