Typescript Priming Angular 8 p下拉列表selectedItem模板未渲染

Typescript Priming Angular 8 p下拉列表selectedItem模板未渲染,typescript,primeng,angular8,primeng-dropdowns,selecteditemtemplate,Typescript,Primeng,Angular8,Primeng Dropdowns,Selecteditemtemplate,下面是我对Priming p下拉控件的自定义模板设计的标记 <p-dropdown [options]="list" [(ngModel)]="selectedListItem" (onChange)="selectionChanged($event)"> <ng-template let-item pTemplate="selectedItem"> <div class="custom-template-div"> &l

下面是我对Priming p下拉控件的自定义模板设计的标记

<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>
我只对模板有问题,因为我尝试了item.value来获取对象以及直接获取项目。两个都不为我工作


任何信息都会有帮助。谢谢

我的同事发现了这个问题,只是让标签和值属性在我们用作集合的自定义数据中可用。我只有有价值的财产

export class ListItemDto {
    text: string;
    text1: string;
    text2: string;

    label: string;
    value: string;

    cssClass: string;
}

如果自定义DTO包含属性标签和值属性以及其他自定义属性,则selectedItem模板将开始工作。

->需要更改为@EhsanKiani,这是发布中的一个输入错误,我已更新。另一种解决方法是设置optionLabel属性。然后您可以通过item.value.text1访问模板中的自定义对象
export class ListItemDto {
    text: string;
    text1: string;
    text2: string;

    label: string;
    value: string;

    cssClass: string;
}