Angular 4:单选按钮:设置为选中(使用双向数据绑定)

时间:2017-09-26 19:07:31

标签: angular

我想在ngOninit期间根据某些输入设置所选的单选按钮。我想使用双向数据绑定。

如何解决这个问题?这(和类似的尝试)不起作用:

<div class="form-group">
  <div class="col-xs-3"><label>Checker</label></div>
    <div class="col-xs-9">
      <label class="radio-inline"><input type="radio" [(ngModel)]="checker" name="checker" value="0" [checked]="checker==0">Nee</label>
      <label class="radio-inline"><input type="radio" [(ngModel)]="checker" name="checker" value="1" [checked]="checker==1">Akkoord</label>
      <label class="radio-inline"><input type="radio" [(ngModel)]="checker" name="checker" value="2" [checked]="checker==2">Geen</label>
    </div>
  </div>
</div

1 个答案:

答案 0 :(得分:2)

value属性包含一个字符串(value =“0”相当于[value] =“'0'”)并且它看起来像checker变量包含一个数字,如果我们查看RadioControlValueAccessor中的writeValue方法,我们发现Angular使用与===运算符的严格比较。

所以,要解决这个问题,我们必须添加这样的括号:[value] =“0”。在这种情况下,value属性将包含一个数字,如果两个变量包含相同的值,则测试检查器=== value将为true。

此外,应删除已检查的绑定。