我正在尝试找到一种在 angular 中进行编辑或删除后刷新数据的方法
I'm trying to find a way to refresh data after making an edit or delete in angular
如果android工作室有notifyDataSetChange()
之类的功能或者
之类的功能
第一种方式: 我猜你正在使用 mat-table
并且你可以在 edit/delete 调用成功后立即调用刷新方法。
import { MatTableDataSource } from '@angular/material/table';
//...
dataSource = new MatTableDataSource<MyDataType>();
//...
refresh() {
this.myService.doSomething().subscribe((data: MyDataType[]) => {
this.dataSource.data = data;
}
}
第二种方式:您可以使用ChangeDetectorRef
刷新数据。
import { ChangeDetectorRef } from '@angular/core';
//...
constructor(private changeDetectorRefs: ChangeDetectorRef) { }
//...
refresh() {
this.myService.doSomething().subscribe((data: MyDataType[]) => {
this.dataSource.data = data;
this.changeDetectorRefs.detectChanges();
}
}
notifyDataSetChange()
之类的功能或者
第一种方式: 我猜你正在使用 mat-table
并且你可以在 edit/delete 调用成功后立即调用刷新方法。
import { MatTableDataSource } from '@angular/material/table';
//...
dataSource = new MatTableDataSource<MyDataType>();
//...
refresh() {
this.myService.doSomething().subscribe((data: MyDataType[]) => {
this.dataSource.data = data;
}
}
第二种方式:您可以使用ChangeDetectorRef
刷新数据。
import { ChangeDetectorRef } from '@angular/core';
//...
constructor(private changeDetectorRefs: ChangeDetectorRef) { }
//...
refresh() {
this.myService.doSomething().subscribe((data: MyDataType[]) => {
this.dataSource.data = data;
this.changeDetectorRefs.detectChanges();
}
}