Мне было интересно, какие возможности у меня есть, чтобы сделать компонент DataGrid более динамичным c.
Мой пример использования: у меня есть DataGrid, который я хочу использовать для (1) серверной нумерации страниц и сортировка и (2) локальная сортировка / фильтрация.
Хотя оба прекрасно работают сами по себе, я хочу создать компонент, который упаковывает DataGrid и принимает решение (управляемый сервером против локальной пагинации / фильтрации и т. д.). c) Возможность настройки то же самое.
Пример:
...
<ng-container *ngIf="serverDriven">
<clr-dg-row *ngFor="let item of itemList ? itemList : []"
[clrDgItem]="item"
clickable>
<clr-dg-cell>
{{ item.name }}
</clr-dg-cell>
<clr-dg-cell>
{{ item.description }}
</clr-dg-cell>
</clr-dg-row>
</ng-container>
<ng-container *ngIf="!serverDriven">
<clr-dg-row *clrDgItems="let sensor of itemList ? itemList : []"
[clrDgItem]="item"
clickable>
<clr-dg-cell>
{{ item.name }}
</clr-dg-cell>
<clr-dg-cell>
{{ item.description }}
</clr-dg-cell>
</clr-dg-row>
</ng-container>
...
Я пробовал несколько подходов с ngTemplateOutlet
и ngComponentOutlet
, но не смог заставить его работать из-за нескольких провайдеров, составляющих сетку данных (например, clr-dg-row
) зависит от.
Есть предложения как это решить?