我将材料数据表用于我的角度项目。我使用动态表,在该表中添加和删除数据。如何从数据表中弹出给定的行?
当然流行不起作用。我还使用了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);
}
答案 0 :(得分:2)
您可以使用traceMarker
从索引处的数组中删除一个元素。
traceEvent
对于您的问题,您无法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;
}
}
只能删除数组中的最后一个元素。