示例代码:
// 原数据源 let data = [{name: 'A', value: 1}, {name: 'B', value: 2}, {name: 'C', value: 3}];
// 更新数据源 data = [{name: 'D', value: 4}, {name: 'E', value: 5}, {name: 'F', value: 6}];
// 在使用数据源之前调用slice()方法 this.dataSource = new MatTableDataSource(data.slice());
// 过滤器方法 applyFilter(filterValue: string) { this.dataSource.filter = filterValue.trim().toLowerCase(); }
// 在更新数据源后手动触发变化检测 constructor(private changeDetectorRef: ChangeDetectorRef) {}
ngOnInit() { // ... dataService.getData().subscribe((data) => { this.dataSource.data = data; this.changeDetectorRef.detectChanges(); }); }