PrimeNg p-таблица RowGroup редактирование не происходит - PullRequest
0 голосов
/ 30 апреля 2020

Я использую функцию PrimeNg RowGrouping. Когда я нажимаю кнопку редактирования для первой строки, группа полностью активируется для редактирования. Но когда я щелкаю по второму ряду в той же группе, кроме вкладки category , включаются другие поля. Я хочу, чтобы весь набор полей был включен для редактирования.

  1. Здесь я реализовал PrimeNg Row Group вместе с некоторыми кнопками действий. enter image description here

  2. Я нажимаю кнопку редактирования первой строки, и для редактирования доступна вся строка.

enter image description here

Теперь я пытаюсь нажать кнопку редактирования второго ряда. Но на этот раз, кроме столбца категории, все остальные поля включены для редактирования. Я хочу, чтобы весь набор строк был редактируемым, как если бы он работал для первого ряда. enter image description here

Ниже приведен код, который я использовал.

    <td *ngIf="rowGroupMetadata[rowData.category].index === rowIndex" [attr.rowspan]="rowGroupMetadata[rowData.category].size">
                <p-cellEditor class="spaceWrap">
                    <ng-template pTemplate="input">
                        <textarea rows="8" cols="18" maxlength="255" [(ngModel)]="rowData.category"
                            ></textarea>
                    </ng-template>
                    <ng-template pTemplate="output">
                        {{rowData.category}}
                    </ng-template>
                </p-cellEditor>
            </td>
<button *ngIf="!editing" pButton type="button" style="width: 25%;margin-left: 8%;" pInitEditableRow
                    icon="pi pi-pencil" class="ui-button-info"></button>

Ниже приведен код, который я использую для группировки данных на основе в категории.

updateRowGroupMetaData() {
this.rowGroupMetadata = {};

if (this.AttrData) {
    for (let i = 0; i < this.AttrData.length; i++) {
        let rowData = this.AttrData[i];
        let category = rowData.category;

        if (i == 0) {
            this.rowGroupMetadata[category] = { index: 0, size: 1 };
        }
        else {
            let previousRowData = this.AttrData[i - 1];
            let previousRowGroup = previousRowData.category;
            if (category === previousRowGroup)
                this.rowGroupMetadata[category].size++;
            else
                this.rowGroupMetadata[category] = { index: i, size: 1 };
        }
    }    
} }

Кто-нибудь, пожалуйста, подскажите мне, чего мне не хватает в моем коде, чтобы сделать всю строку редактируемой в функции группировки строк Prime-Ng

...