【发布时间】:2017-05-30 16:25:57
【问题描述】:
我希望你一切都好。这里的实习生,刚开始前端开发,如果问题很愚蠢,或者代码看起来很糟糕(非常欢迎任何更正),请见谅。
我在数据表中有一个下拉元素:
<p-dataTable [value]="Items">
<p-column field="Destination" header="Destinos">
<ng-template let-col let-item="rowData" pTemplate="body">
<p-dropdown [ngModelOptions]="{standalone: true}" [(ngModel)]="item[col.field]" appendTo="body" [options]="Destinations">
</p-dropdown>
</ng-template>
</p-column>
<!-- more columns-->
</p-dataTable>
目的地在此处加载:
this.destinationService.getDestinations().
subscribe((res: Array<Destination>) => {
res.forEach(element => {
this.Destinations.push({ label: element.Name, value: element.id });
});
});
当按下提交按钮时,它会生成一个 JSON。而这个“创造”模板就像一个魅力。保存的对象是一个估计值,estimate.Provider 有一个正确的属性值,它是一个数字,取自 select/option 'value',所以我认为绑定在这里完美。
但是当我在“编辑”模板中加载这个提到的估计值时,除了“目的地”下拉列表之外,一切都加载完美,因为it hasn't nothing selected。
我的意思是,如果estimate.Provider 是2,它不应该是“值”为2 的“自动选择”选项吗?至少,这就是原生下拉菜单的工作方式(我检查了值是否正确加载,以防万一,确实如此)。 此外,我认为默认的空值很奇怪,因为primeng下拉列表默认选择下拉列表中加载的第一个值。然后,如果我单击它,它会完美运行; displays the options as it should do.
所以我相信一些奇怪的事情正在发生,我错过了一些重要的事情。
我不知道该怎么办。提前致谢
【问题讨论】:
标签: angular drop-down-menu datatable primeng