通过设置this.model.type = OPTION_NR1
选择值,角度将HTML中的HTML归属ng-reflect-model
设置为 0 ,这是默认的枚举值和Option1。 HTML属性的正确值为 OPTION_NR1 ,它会使用Option1填充下拉列表,而不是将其留空。
目前的设置:<select .. ng-reflect-model="0">
它应该做什么:<select .. ng-reflect-model="OPTION_NR1">
<select [(ngModel)]="model.type" required>
<option value="OPTION_NR1" >Option1</option>
<option value="OPTION_NR2" >Option2</option>
</select>
答案 0 :(得分:2)
更新您的枚举以使用TypeScript's string enum。
如果你的枚举看起来像:
export const enum Type {
OPTION_NR1 = 'OPTION_NR1',
OPTION_NR2 = 'OPTION_NR2'
}
将其更改为:
UseAuthentication
这是在this pull request中的生成器中完成的,可在v5.0.0-beta.1及更高版本中使用。
答案 1 :(得分:0)
我不知道我是否帮助你。但似乎你希望你的model.type字段是一个字符串而不是代表枚举的索引的0。
所以我假设您的Enum被命名为#34; Types&#34;。试试这种方式:
this.model.type = Types[this.model.type];
如果这不是您的预期,请更具体。