2

在 Angular2 中,是否有一种干净的方法可以将表单控件的值作为字符串以外的其他内容来处理,例如有一个<select>with options(bool) true(bool) false?

目前我正在使用感觉不太优雅的解决方案:

<select (change)="model.published = !!$event.target.value">
    <option value="">No</option>
    <option value="1">Yes</option>
</select>

<select (change)="model.type = $event.target.value * 1">
    <option value="1">My value is (int) 1</option>
    <option value="2">My value is (int) 2</option>
</select>

<select>在示例中使用了 s,但我也对其他表单控件感兴趣。

这个问题被建议为重复,但我不认为这是一个,因为我不是

  1. 只对精选感兴趣
  2. 尝试动态生成选项
4

2 回答 2

1

这是当前 Angular 版本中的一个已知限制https://github.com/angular/angular/issues/2551

于 2016-01-15T09:24:30.370 回答
1

是的,只需添加[(ngModel)]="model.published"到选择中,它就会设置选定对象的value属性<option>,如果您<option>像这样添加一个对象:<option value="{{object}}">您将设置一个对象,它不必是字符串。

于 2016-01-15T09:26:29.103 回答