使用Angular 6,我想在 ng-select标签中的 bindLabel 中 concat名字和姓氏?
这是我的HTML: ng-select [items] ="人员" bindLabel ="名字" bindValue ="标识" [(ngModel)] ="将selectedItem"占位符="人"
有什么想法吗? bindLabel =" LastName +' ' +姓"的 =>不起作用 bindLabel =" person.Name as(person.LastName +'' person.FirstName)for person person in persons"的 =>不起作用
答案 0 :(得分:1)
显示全名的更好方法是:
<ng-select required [items]="buddies" bindLabel="firstName" #buddiesInput="ngModel" [(ngModel)]="userSelect" name="userSelect" >
<ng-template ng-label-tmp let-item="item">
{{item.firstName}} {{item.lastName}}
</ng-template>
<ng-template ng-option-tmp let-item="item" let-search="searchTerm">
{{item.firstName}} {{item.lastName}}
</ng-template>
</ng-select>
答案 1 :(得分:0)
相当老的问题,但我仍然会回答。我碰巧遇到了这个问题,因为我也在寻找相同的解决方案。
可能不是最佳实践,或者可能有更好的解决方案,但我只是为数组创建了一个映射,因此可以为full_name
创建一个新字段。
请参阅下面的代码,如果这样做可以帮助您。
模板:
<ng-select
[(ngModel)]="_selected_user"
[items]="_all_users"
placeholder="Select User"
bindLabel="full_name"
bindValue="id"
>
<ng-template ng-option-tmp let-item="item" let-search="searchTerm">
<div><span></span><span [ngOptionHighlight]="search">{{item.full_name }}</span></div>
<small>User ID: <b>{{item.user_id}}</b> </small>
</ng-template>
</ng-select>
组件:
users.map(
(user: any) => {
user.full_name = user.last_name + ', ' + member.first_name + ' ' + member.middle_name
return member;
}
)
此功能将使您可以通过first_name
或last_name
或middle_name
或完全在一个搜索键中进行搜索。