Ng-select显示与下拉菜单不同的值

时间:2018-07-18 12:55:11

标签: angular angular-ngselect

我希望我的DropDown将属性名称显示为Description,将id属性绑定到模型并显示所选项目的属性ScoreName。有没有办法用ng-select来实现?

Scores = [
     { id:1, ScoreName:'1', Description:'Bad' }, 
     { id:2, ScoreName:'2', Description:'Good' },
     { id:3, ScoreName:'3', Description:'Best' }
 ]

<ng-select class="score" name="score" appendTo="body" [loading]="!loaded" 
      [items]="Scores" bindLabel="ScoreName" bindValue="ScoreName" 
       placeholder="" [(ngModel)]="row.Score">
</ng-select>

2 个答案:

答案 0 :(得分:0)

您好,如果您仍然需要这样做,则可以使用自定义模板,并且不能将bindValue与对象explanation一起使用。参见examples的自定义模板

答案 1 :(得分:0)

我知道现在有点晚了,但也许它会帮助其他人。

您可以使用 IdiakosE 已经说过的自定义模板。

<ng-select class="score" name="score" appendTo="body" [loading]="!loaded" 
   [items]="Scores" bindLabel="ScoreName" bindValue="id" 
   placeholder="" [(ngModel)]="row.Score">
   <ng-template ng-option-tmp let-item="item" let-item$="item$" let-index="index">
    {{item.Description}}
   </ng-template>   
</ng-select>