Angular 在选择选项中设置默认静态值

Angular 在选择选项中设置默认静态值,angular,angular7,Angular,Angular7,我在设置selecttag的默认值时遇到问题。以下是我的一些片段: <select class="form-control" id="field_company" name="company" formControlName="company"> <option value="null" [selected]="true"> {{ 'khanbankCpmsApp.company.default' | translate }}</option>

我在设置
select
tag的默认值时遇到问题。以下是我的一些片段:

<select class="form-control" id="field_company" name="company" formControlName="company">
    <option value="null" [selected]="true"> {{ 'khanbankCpmsApp.company.default' | translate }}</option>
    <option
        [ngValue]="companyOption.id === editForm.get('company').value?.id ? editForm.get('company').value : companyOption"
                *ngFor="let companyOption of companies;"
    >
       {{ companyOption.name }}</option>
</select>

{{'khanbankCpmsApp.company.default'| translate}}
{{companyOption.name}
默认情况下,该静态值应显示在select上。但结果是:

我做错了什么?有什么建议吗


由于您使用的是被动表单,因此应在被动表单中设置默认值,以便框架选择正确的选项

editForm = this.fb.group({ 
  name: [null, [Validators.required]], 
  status: [null, [Validators.required]], 
  dueDate: [], loanAmount: [], grantsOpenUntil: [], 
  users: [], 
  company: ['khanbankCpmsApp.company.default'], 
  });

{{'khanbankCpmsApp.company.default'| translate}}
{{companyOption.name}

您使用的是被动表单,因此需要将FormControl设置到formGroup中


一个
两个
三
和.ts文件包含

导出类HelloComponent实现OnInit{
@Input()名称:string;
companyGroup:FormGroup;
构造函数(私有fb:FormBuilder){
}
恩戈尼尼特(){
this.companyGroup=this.fb.group({
公司:''
})
this.companyGroup.get('company').patchValue('2');
}
}

演示链接

通过开发者工具检查元素,你能看到结果值吗?@johey是的,我将编辑我的问题该公司从何处获得?公司是你的formControlName。。formControlName=“公司”。如果您使用formbuilder,它必须类似于。fb.group({company:[null,]})
editForm=this.fb.group({name:[null,[Validators.required]],status:[null,[Validators.required]],dueDate:[],loanAmount:[],grantopentil:[],用户:[],公司:[null],})好的,试试新的建议。什么,这和我的答案完全一样
<select class="form-control" id="field_company" name="company" formControlName="company">
    <option [ngValue]="'khanbankCpmsApp.company.default'"> {{ 'khanbankCpmsApp.company.default' | translate }}</option>
    <option
        [ngValue]="companyOption.id === editForm.get('company').value?.id ? editForm.get('company').value : companyOption"
                *ngFor="let companyOption of companies;"
    >
       {{ companyOption.name }}</option>
</select>