我在我的 AngularJS 应用程序中使用 jQuery datatables。在我的
GET
API 调用成功后,我将结果设置为范围变量并使用 timeout
来初始化 datatable
。
$scope.successCallbackOfAPI = function(data) {
$timeout(function() {
$scope.items = angular.copy(data);
$("#myDatatable").DataTable();
}, 200);
};
我有一个场景,我必须再次调用 API 并使用 API 响应中的新数据刷新
datatable
。在这种情况下,我将调用相同的 callback
来重新初始化 datatable
。
即使
datatable
变量正在更新,scope
仍然保留刷新之前的先前数据。
有没有一种方法可以在不使用
directive
的情况下实现这一目标?
当我遇到这个问题时,我创建了不同的函数来更新我的表。 它有这部分代码:
dataTable.clear().draw()
dataTable.rows.add( NEWDATA );
dataTable.columns.adjust().draw();
希望有帮助
// Apply this code before the api call or in the render() function.
var table = $('#table_id').DataTable();
table.clear().draw(); // To reset the table