我正在使用 Angular 7 和 Angular-Datatables。 我试图定义一个“重新渲染”按钮以重新加载数据 like in this example .
我不明白我应该在渲染函数中放置什么:
我的API函数:
fn_getFavoriteTables() {
this._getFavoriteTablesApiCall = this.getFavoriteTablesService.getFavoriteTables(Number(localStorage.getItem('UserID')), Number(localStorage.getItem('BranchID'))).pipe(takeUntil(this.destroySubject$)).subscribe(x => {
this.getFavoriteTables = x;
this.dtTrigger.next();
});
};
渲染函数:
rerender(): void {
this.dtElement.dtInstance.then((dtInstance: DataTables.Api) => {
// Destroy the table first
dtInstance.destroy();
// Call the dtTrigger to rerender again
this.dtTrigger.next();
});
}
ngOnDestroy(): void {
console.log('ngDestroy');
// Do not forget to unsubscribe the event
this.dtTrigger.unsubscribe();
}
最佳答案
也可以这样完成:
import { DataTableDirective } from 'angular-datatables';
dtElement: DataTableDirective;
dtInstance: Promise<DataTables.Api>;
rerender(): void {
this.dtElement.dtInstance.then((dtInstance: DataTables.Api) => {
dtInstance.ajax.reload()
});
}
关于Angular 7 - 重新加载数据表中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55209840/