Как удалить узел из компонента дерева PrimeNg при удалении при фильтрации - PullRequest
0 голосов
/ 14 мая 2019

Привет, у меня проблема с перетаскиванием из дерева во время фильтрации.Когда я пытаюсь перетащить, когда я не фильтрую, элемент удаляется из правого дерева, но когда я фильтрую, он не удаляется.

Это видео, показывающеепроблема

<p-tree [value]="data" [draggableNodes]="true" [droppableNodes]="true" [filter]="true" filterBy="label">
  <ng-template let-node pTemplate="default">
    <div>{{node['label']}}</div>
  </ng-template>
</p-tree>
<p-tree [value]="_target" [draggableNodes]="true" [droppableNodes]="true" [filter]="true" filterBy="label">
  <ng-template let-node pTemplate="default">
    <div>{{node['label']}}</div>
  </ng-template>
</p-tree>

1 Ответ

0 голосов
/ 15 мая 2019

Вам необходимо добавить уникальный ключ ко всем элементам (узлам) в массиве TreeNode («data» в вашем случае). Без ключа компонент дерева не может инициировать события на узлах отфильтрованного дерева. В вашем случае может быть достаточно просто скопировать имена узлов в поле node.key.

Официальная документация на https://www.primefaces.org/primeng/#/tree каким-то образом это исключает - они предоставляют ссылку на github (https://github.com/primefaces/primeng/issues/7237#issue-409791407) без надлежащего объяснения.

...