AngularJs + Datatables 顯示表格

1、需要加入的資源文件

<script
    src="${cdnUrl}/??ajax/thirdparty/angular-1.6.2/angular.js,
    ajax/thirdparty/angular-1.6.2/angular-ui-router.js,
    ajax/thirdparty/angular-1.6.2/angular-resource.min.js,
    ajax/libs/angular-datatables/0.5.5/angular-datatables.min.js"></script>

2、在模塊中注入datatbles依賴

APP_NAME = "showCaseApp";
var showCaseApp = angular.module(APP_NAME, ["ui.router","datatables","ngResource"]);

3、HTML文件

<div  ng-controller="WithPromiseCtrl as showCase">

    <select ng-init="selectedRang = rang[0]" ng-model="selectedRang"
        ng-options="x.name for x in rang" ng-change="change()">
    </select>

    <table datatable="" dt-options="showCase.dtOptions"
        dt-columns="showCase.dtColumns" dt-instance="showCase.dtInstance" class="row-border hover"></table>
</div>

4、JavaScript文件


angular.module(APP_NAME).controller('WithPromiseCtrl', 
        ["$scope", "$rootScope","$http", "$q","utils","DTOptionsBuilder","DTColumnBuilder","$resource",
        function ($scope,$rootScope,$http,$q,utils,DTOptionsBuilder, DTColumnBuilder,$resource) {
   
            $scope.rang = [
                           {value:3,name:'最近3天'},
                           {value:7,name:'最近7天'},
                           {value:30,name:'最近一個(gè)月'},
                           {value:0,name:'全部'}
                ];
            
            var vm = this;
            vm.dtOptions = DTOptionsBuilder.fromFnPromise(function() {
                var defer = $q.defer();
                $http.get("/" + utils.getContextPath() + "/board/getActivityList?range=" + 3 + "&module=" + $rootScope.nodeText)
                    .then(function(result) {
                        defer.resolve(result.data.data);
                    });
                return defer.promise;
            }).withPaginationType('simple_numbers');

            vm.dtColumns = [
                DTColumnBuilder.newColumn('actionTime').withTitle('活動時(shí)間'),
                DTColumnBuilder.newColumn('dept4').withTitle('四級部門'),
                DTColumnBuilder.newColumn('userId').withTitle('姓名'),
                DTColumnBuilder.newColumn('subModule').withTitle('活動類型'),
                DTColumnBuilder.newColumn('actionDesc').withTitle('活動描述'),
                DTColumnBuilder.newColumn('offering').withTitle('版本號')
            ];
            
            vm.dtInstance = {};
            
            $scope.change = function(){
               
                vm.dtInstance.changeData(function() {
//                  return $resource(
//                          "/" + utils.getContextPath() + "/board/getActivityList?range=" + $scope.selectedRang.value + "&module=" + $rootScope.nodeText)
//                          .get().$promise;
                    var defer = $q.defer();
                    $http.get("/" + utils.getContextPath() + "/board/getActivityList?range=" + $scope.selectedRang.value + "&module=" + $rootScope.nodeText) 
                        .then(function(result) {
                            defer.resolve(result.data.data);
                        });
                    return defer.promise;
                });
                                        
            }
            
            
}])
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,654評論 19 139
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,192評論 25 708
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,281評論 6 342
  • 還記得那個(gè)充滿活力,青春煥發(fā)的自己?這樣的自己是多么渴望擁有,可它卻一直都在的走遠(yuǎn)。 現(xiàn)在的我,時(shí)常會想念充...
    二歡_笑8閱讀 312評論 0 1
  • 春撒一顆種子,秋收萬擔(dān)高粱。燒磚泥瓦蓋新房,明月小樓到訪。 暑夏降溫啤酒,寒冬加熱瓊香。勤勞致富座山岡,自塑門前威望。
    木貞ma閱讀 308評論 2 4

友情鏈接更多精彩內(nèi)容