所以当我想出答案时,我正在写这个问题,但我想我会在这里为别人发布这个问题。
如何将复杂对象绑定到PrimeNG自动完成字段,以便您可以预先选择该字段中的值,在返回表单时从绑定到自动完成的所选对象获取关联属性?在下面的示例中,siteObj表示绑定到自动完成的复杂对象,而siteName是在UI中显示的该对象中的字段。 Sites是复杂对象的集合。
自动填充
<p-autoComplete [suggestions]="sites" field="siteName" formControlName="siteObj"
(completeMethod)="getFilteredItems($event)"
appendTo="body" [minLength]="3"></p-autoComplete>
答案 0 :(得分:1)
所以这就是我想到的:
FormGroup 需要如下所示:
this.seriesObjectForm = this.formBuilder.group({
seriesID: [''],
siteObj: {
siteID: [''],
siteName: ['']
},
variableID: [''],
etlTypeID: ['']
})
预选如下所示:
this.seriesObjectForm.patchValue({
seriesID: series.seriesID, siteObj: {siteID: series.siteID, siteName: series.siteName }, variableID: series.variableID, etlTypeID: ''
});
表单中的获取值如下所示:
var newItem = new Series(series.seriesID, series['siteObj']['siteID'], series['siteObj']['siteName'], series.variableID, series.etlTypeID)