Я использую angular-datatables с обещанием, и все работает нормально. У меня есть много действий, которые можно выполнить с каждым регистром (используя ресурс angular $http), например, изменить статус или что-то в этом роде.
Но мне нужно перезагружать данные datatable после каждого действия, даже если я редактировал только одну строку. И этот процесс немного затянулся!
Есть ли способ перезагрузить только те данные, которые я изменил? Например, если я редактирую некоторые данные строки, я хочу, чтобы перезагрузилась только эта строка.
Простите меня, если это не умный вопрос, но мне нужно знать, могу ли я улучшить производительность действий над таблицей.
Вот мой код!
DtOptions
vm.dtOptions = DTOptionsBuilder.fromFnPromise(function() {
vm.defer = $q.defer();
vm.mainService.getItems(idtask, flag, type).then(function(result)
vm.defer.resolve(result.data);
});
return vm.defer.promise;
})
.withOption('headerCallback', function(header) {
if (!vm.headerCompiled) {
vm.headerCompiled = true;
$compile(angular.element(header).contents())($scope);
}
})
.withPaginationType('full_numbers')
.withOption('createdRow', createdRow)
.withOption('deferRender', true)
.withDisplayLength(100)
.withOption('initComplete', function() { });
Функция перезагрузки данных
function reloadData() {
var resetPaging = false;
vm.dtInstance.reloadData(function callback() {}, resetPaging);
}
После некоторого выполнения над таблицей я вызываю функцию reloadData().
Спасибо за любую помощь! И я прошу прощения за мой плохой английский.