Make sure you import ViewChild and MatTable:
import {Component, ViewChild} from '@angular/core';
import {MatTable} from '@angular/material';
Then you can get a reference to the table using the ViewChild (note that a type T is required on MatTable - I just used any, but if you have a typed table, you will need to use that type:
@ViewChild(MatTable) table: MatTable<any>;
Then when you modify the table in any way you will need to call the renderRows() method.
delete(row: any): void {
/* delete logic here */
this.table.renderRows();
}
Here is a very simple working example:
https://stackblitz.com/edit/angular-bxrahf
Some sources I found when solving this issue myself:
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…