2016-08-16 5 views
1

Я пытаюсь загрузить данные из источника ajax в угловые данные, но он даже не попадет в вызов ajax.Угловые dataTables с источником Ajax

var analyzer=angular.module('analyzer', ['datatables']); 
analyzer.controller('WithAjaxCtrl', WithAjaxCtrl); 

      function WithAjaxCtrl(DTOptionsBuilder, DTColumnBuilder) { 
        var vm = this; 

        $scope.dtOptions = DTOptionsBuilder.fromSource('/analyzer/List') 

        $scope.dtColumns = [ 
        DTColumnBuilder.newColumn('BuildName').withTitle('Name'), 
        DTColumnBuilder.newColumn('Total').withTitle('Total'), 
        DTColumnBuilder.newColumn('Passed').withTitle('Passed'), 
        DTColumnBuilder.newColumn('Failed').withTitle('Failed') 

       ]; 
      } 

Вот HTML код table-

<div ng-controller="WithAjaxCtrl"> 
    <table datatable="" dt-options="dtOptions" dt-columns="dtColumns" class="row-border hover"></table> 
</div> 

данные из источника АЯКС находится в форме -

{"responseCode":0,"responseData":[{"Name":"Rob","Total":6273,"Passed":5874,"Failed":399}]} 

Так будет я должен определить DATASRC?

ответ

1

Да, вам нужно указать dataSrc, так как ваши строки содержатся в responseData, а не в заданном по умолчанию или ожидаемом data. В угловых DataTables есть вариант сеттер по имени withDataProp():

$scope.dtOptions = DTOptionsBuilder.fromSource('/analyzer/List') 
    .withDataProp('responseData') 

Не удается связать напрямую, но смотреть на https://l-lin.github.io/angular-datatables/#/api