Ниже приведена моя разметка для пользовательского дизайна шаблона для элемента управления p-раскрывающегося списка PrimeNG
<p-dropdown [options]="list" [(ngModel)]="selectedListItem" (onChange)="selectionChanged($event)">
<ng-template let-item pTemplate="selectedItem">
<div class="custom-template-div">
<div class="pull-left location-icon {{item.value.cssClass}}"></div>
<div class="header-line pull-left"><b>{{item.value.text1}}</b></div>
<div class="clearfix"></div>
<div class="detail-line"><i>{{item.value.text2}}</i></div>
</div>
</ng-template>
<ng-template let-item pTemplate="item">
<div class="custom-template-div">
<div class="pull-left location-icon {{item.cssClass}}"></div>
<div class="header-line pull-left"><b>{{item.text1}}</b></div>
<div class="clearfix"></div>
<div class="detail-line"><i>{{item.text2}}</i></div>
</div>
</ng-template>
</p-dropdown>
В этом элементе управления раздел <ng-template let-item pTemplate="item">
работает так, как ожидалось, когда в раскрывающемся списке перечислены элементы с иконками CSS. , но когда элемент выбран, он не отображается в элементе управления, но на уровне кода элементы выбираются.
Я использую пользовательский DTO, как показано ниже;
export class ListItemDto {
text: string;
text1: string;
text2: string;
value: string;
cssClass: string;
}
У меня проблема только с шаблоном <ng-template let-item pTemplate="selectedItem">
, где, как я пытался item.value
, чтобы получить объект, а также непосредственно item
. Оба не работают для меня.
Любая информация будет полезна. Спасибо!