Создание таблицы многократного использования с фильтрами, которые используют данные, динамически передаваемые в - PullRequest
0 голосов
/ 18 мая 2019

У меня есть таблица с динамическим количеством столбцов, и я также могу установить метод фильтра для каждого столбца.

У меня проблема в том, что массив, в котором я храню значения в i 'Я не могу получить значения для определенного столбца.

Пример массива с меткой и значениями выглядит следующим образом, но может иметь разные значения метки и разные размеры.

arrayValues = [{label: "col1", values : ["val1", "val2", "val3"]}, {label: 
"col4", values : ["val1", "val2", "val3"]}]

Теперь я хочу использовать эти значения, чтобы сопоставить столбец со значениями

<th *ngFor="let col of columns" [ngSwitch]="col.filter">

<input *ngSwitchDefault pInputText type="text" input)="dt.filter($event.target.value, col.field, 'contains')" [value]="dt.filters[col.field]?.value" style="width:100%">

<p-multiSelect *ngSwitchCase="'select'" [options]="arrayValues" defaultLabel="Filter" (onChange)="dt.filter($event.value, col.field, 'in')" [style]="{'width':'100%'}"></p-multiSelect>
</th>

Как бы я использовал arrayValues ​​для установки параметров, потому что в настоящее время он просто дает мне значения меток и если я использую arrayValues ​​[0]он использует значения, но только из первого объекта, и я не могу жестко закодировать, потому что значения arrayValues ​​могут каждый раз иметь разные размеры.

Дайте мне знать, если мне нужно что-то добавить, чтобы было проще.

Спасибо!

...