Angular 2有选择框有默认值

问题描述:

我试图设置模型驱动窗体的默认值始终是公开的,但它总是显示空白,当我查看它。如果只是使用普通的html,它将与selected =“Public”,但它看起来像formControlName覆盖。Angular 2有选择框有默认值

<select formControlName="privacy"> 
     <option [value]="2">Public</option> 
     <option [value]="3">Friends</option> 
     <option [value]="1">Private</option> 
</select> 

compontent.ts

this.wallPost= fb.group({ 
     "content": ["", Validators.required], 
     "privacy": ["2"] 
    }); 
+0

您是如何设置默认值的? – Fals

+0

@Aravind这是用于角度2 ...链接是6年前的问题 – pwborodich

+0

@ false this.wallPost = fb.group({“{”,Validators.required], “privacy” :[“2”] });虽然选择框是空的,有没有办法让这个值显示为默认选择? – pwborodich

在控制器,你应该有类似的东西:根据您是否正在创建的形式

this.wallPost = new FormGroup({ 
    privacy: new FormControl(2) 
}); 

constructor(public fb: FormBuilder) {} 
this.wallPost = this.fb.group({ 
    privacy: [2] 
}); 

手动或使用表单生成器

工作Plunkr

+0

嘿泰迪,我想我应该更清楚我想让这个价值出现在表单上。现在它只是空白,然后当我点击选择框的选项框 – pwborodich

+0

你是在谈论wallPost FormGroup上的值还是选择框默认为2? –

+0

啊我看到我的问题是我设置为一个字符串“隐私”的默认值:['2'],我明白了,感谢Plunker! – pwborodich