Я пытаюсь реализовать угловой DataTables в моем проекте, но она возвращает «TypeError: Не удается прочитать свойство„aDataSort“неопределеннойНе удается прочитать свойство «aDataSort» неопределенных в угловых DataTables
Я использую
Angular js version 1.4.9.
Jquery version 2.1.1
DataTable version 1.10.10
Refrence сайт
Моего HTML код
<div class="col-md-12" ng-controller="WithAjaxCtrl as showCase"> <table datatable="" dt-options="showCase.dtOptions" dt-columns="showCase.dtColumns" class="row-border hover"></table></div>
Моего Угловой JS код контроллер
angular.module('admin.package', [
'ui.router',
'ui.bootstrap',
'datatables',
'datatables.bootstrap',
'ngResource',
'plusOne'
]).controller('WithAjaxCtrl', WithAjaxCtrl);
function WithAjaxCtrl(DTOptionsBuilder, DTColumnBuilder,$http,UserService,localStorageService) {
UserService.obj.get('packages/index',localStorageService.get('userkey').token).then(function (results) {
if(results.status==200){
var vm = this;
vm.dtOptions = DTOptionsBuilder.fromSource(results.data.packages)
.withPaginationType('full_numbers');
vm.dtColumns = [
DTColumnBuilder.newColumn('id').withTitle('id'),
DTColumnBuilder.newColumn('package_name').withTitle('Packag Name'),
DTColumnBuilder.newColumn('amount').withTitle('Amount'),
DTColumnBuilder.newColumn('package_duration').withTitle('Amount'),
DTColumnBuilder.newColumn('currency').withTitle('validity')
];
console.log(vm.dtColumns);
console.log(vm.dtOptions);
}else{
alert('You are not a authorized user');
}
}, function(reason) {
console.log(reason);
});
}
Заранее спасибо
Вы не можете использовать '$ resource' как базу для dataTables - если вы используете' fromSource() ', вы должны настроить таргетинг на JSON-файл (или что-то, что поставляет простой массив объектов JSON), если вы используете' $ resource' вы можете сопоставить его с массивом простых объектов и использовать его как 'withOption ('data', value)', возможно, вдоль 'withDataProp()' ... – davidkonrad