繁体   English   中英

ng-select 显示 [object, object]

[英]ng-select displaying [object, object]

我有一个对象数组,其中包含一个带有 object 的元素,我希望使用 ng-select 在可选择的下拉列表中显示 object 的名称。 我可以按预期控制台记录所有内容,但是当我尝试显示数据时,我只能显示 [object, object]。 对象的正确数量。

HTML -

<ng-select 
  [searchable]="false"
  bindValue="id"
  bindLabel="medications.items"
  [items]="selected"
  [(ngModel)]="serviceUsersMedication">
</ng-select>

TS-

  onSelect({selected}) {
    this.selected = selected;
    const filteredMeds = this.selected.filter(item => {
    return item.medications;
  });

  this.serviceUsersMedication = filteredMeds.map(item => {
    return item.medications;
  });

  console.log('Selected:');
  console.log(this.selected);
}

寻找药物清单

控制台日志

您对 [items](ng-select 用于显示选项的集合)使用与 [(ngModel)](用于存储/显示 SELECTED (1) 项目)相同的变量。

你必须分开这个:

  • [items] 应该是指集合
  • [(ngModel]) 应该指的是您选择的项目。

你的 ng-select 应该是这样的:

<ng-select 
  [searchable]="false"
  bindValue="id"
  bindLabel="name"
  [items]="medications.items"
  [(ngModel)]="selected">
</ng-select>

假设您在药物的项目数组中有一个名称属性,否则将其更改为有意义的属性以显示.. selected 已经包含所选项目,无需对其进行过滤。

还假设您正在使用 @ng-select/ng-select 中的 ng-select

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM