如何使用select将对象属性绑定到Angular2表单项

时间:2016-09-20 12:03:23

标签: angularjs html5 mongodb angular typescript

我有角形的问题。 我正在尝试创建一个使用mongo集合中的数据的表单,并通过<select>指令提供它。 我有一个像这样初始化的FormBuilder:

ngOnInit() {
    this.addForm = this.formBuilder.group({
        department_pk: ['', Validators.required],
        name_c: ['', Validators.required],
        location_fk: [],
        expirationdate_d: [],
    });
}

问题是location_fk属性。我试图通过以下<select>语句填充此属性的值(我将其他表单组(对于name_c,...)从此代码段中删除):

<form [formGroup]="addForm">                 
    <div class="form-group">
        <label>Location (*): </label>
        <select class="form-control" formControlName="location_fk" (ngModelChange)="onChange($event)" name="select">
              <option [ngValue]="i" *ngFor="let i of locations">{{i.name_c}}</option>
        </select>
    </div>
</form>

我设法提取i的值,但是,我想从集合中提取属性i.location_pk,同时仍然在显示的i.name_c选项中显示{{1}}用户。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

你试过这个吗?

<option [ngValue]="i['propName']" *ngFor="let i of locations">{{i.name_c}}</option>

<option [ngValue]="i.propName" *ngFor="let i of locations">{{i.name_c}}</option>