在 <ng-select> 处的 bindLabel 上使用管道

Jan*_*ger 2 pipe angular

<ng-select \n    [items]="prozessItem$ | async" \n    [multiple]="true" \n    bindLabel="itemName | umlautsPipe" \n    bindValue="nrItems"\n></ng-select>\n
Run Code Online (Sandbox Code Playgroud)\n\n

我想通过管道将 itemName 从 传输"\xc3\xbc\xc3\xa4\xc3\xb6\xc3\x9fTEST""ueaeoessTest"。异步管道工作得很好,没有我得到的管道"\xc3\xbc\xc3\xa4\xc3\xb6\xc3\x9fTEST"。ng-select 只接受属性中的字符串值。我可能会误解它,但我相信当我使用 时bindLabel="itemName | umlautsPipe", ng-select 试图引用item[itemName | umlautsPipe]不存在的内容。

\n\n

那么如何转换项目的名称呢?

\n

Ali*_*F50 6

看来你必须使用模板,尝试:

<ng-select 
    [items]="prozessItem$ | async" 
    [multiple]="true" 
    bindValue="nrItems"
>
  <ng-template ng-option-tmp ng-label-tmp let-item="item">
      {{ item.itemName | umlautsPipe }}
   </ng-template>
</ng-select>
Run Code Online (Sandbox Code Playgroud)