Как извлечь выбранную строку из таблицы данных материала? - PullRequest
0 голосов
/ 20 декабря 2018

Я использую таблицу данных материала для своего проекта Angular.Я использую динамическую таблицу, где данные добавляются и удаляются.Как извлечь данную строку из таблицы данных?Конечно, поп не работает.Я также использовал splice(row, 1), который также не работал (возможно, я использовал это неправильно).

Тип 'строки': строка - это объект (массив, состоящий из 4 чисел).

Журнал строки:

{sender: "7", recipient: "1", amount: "1", fee: "1"}

При нажатии на флажок (каждая строка имеет флажок) в таблице данных я хочу удалить строку.Флажок определяет, какая строка удаляется:

<mat-checkbox (click)="$event.stopPropagation(); putTXInBlock(row);"
                      (change)="$event ? selection.toggle(row) : null"
                      [checked]="selection.isSelected(row)">
</mat-checkbox>

Где строка должна быть удалена:

  putTXInBlock(row) {
    this.temp = this.dataSource.data.slice();
    this.temp.pop(); // pop input parameter row
    this.dataSource.data = this.temp;
    this.ref.detectChanges();
    this._TS.emitTransaction(row);
  }

1 Ответ

0 голосов
/ 20 декабря 2018

Вы можете использовать Array.prototype.splice, чтобы удалить элемент из массива с индексом.

for(var i = 0; i < this.temp.length; i++){
      if(JSON.stringify(row) === JSON.stringify(this.temp[i]) ){
        this.temp.splice(i,1);
        break;
      }
  }

На ваш вопрос вы не можете pop(), потому что pop() может удалить только последний элементв массиве.

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