@@ -13,11 +13,12 @@ All features are enabled to get an idea of performance
13
13
<file name="app.js">
14
14
var app = angular.module('app', ['ngTouch', 'ui.grid', 'ui.grid.cellNav', 'ui.grid.edit', 'ui.grid.resizeColumns', 'ui.grid.pinning', 'ui.grid.selection', 'ui.grid.moveColumns', 'ui.grid.exporter', 'ui.grid.importer', 'ui.grid.grouping']);
15
15
16
- app.controller('MainCtrl', ['$scope', '$http', '$timeout', '$interval', 'uiGridConstants', 'uiGridGroupingConstants',
16
+ app.controller('MainCtrl',
17
17
function ($scope, $http, $timeout, $interval, uiGridConstants, uiGridGroupingConstants) {
18
- var gridApi;
18
+ var vm = this,
19
+ gridApi;
19
20
20
- $scope .gridOptions = {
21
+ vm .gridOptions = {
21
22
data: 'myData',
22
23
enableCellEditOnFocus: true,
23
24
enableColumnResizing: true,
@@ -60,26 +61,26 @@ All features are enabled to get an idea of performance
60
61
return row.id;
61
62
}
62
63
63
- $scope .toggleFilterRow = function() {
64
- $scope .gridOptions.enableFiltering = !$scope .gridOptions.enableFiltering;
64
+ vm .toggleFilterRow = function() {
65
+ vm .gridOptions.enableFiltering = !vm .gridOptions.enableFiltering;
65
66
gridApi.core.notifyDataChange(uiGridConstants.dataChange.COLUMN);
66
67
};
67
68
68
- $scope .callsPending = 0;
69
+ vm .callsPending = 0;
69
70
70
71
var i = 0;
71
- $scope .refreshData = function(){
72
+ vm .refreshData = function(){
72
73
$scope.myData = [];
73
74
74
75
var start = new Date();
75
76
var sec = $interval(function () {
76
- $scope .callsPending++;
77
+ vm .callsPending++;
77
78
78
79
$http.get('/data/500_complex.json')
79
80
.then(function(response) {
80
81
var data = response.data;
81
82
82
- $scope .callsPending--;
83
+ vm .callsPending--;
83
84
84
85
data.forEach(function(row){
85
86
row.id = i;
@@ -88,33 +89,33 @@ All features are enabled to get an idea of performance
88
89
$scope.myData.push(row);
89
90
});
90
91
})
91
- .error (function() {
92
- $scope .callsPending--
92
+ .catch (function() {
93
+ vm .callsPending--;
93
94
});
94
95
}, 200, 10);
95
96
96
97
97
98
var timeout = $timeout(function() {
98
99
$interval.cancel(sec);
99
- $scope .left = '';
100
+ vm .left = '';
100
101
}, 2000);
101
102
102
103
$scope.$on('$destroy', function(){
103
104
$timeout.cancel(timeout);
104
105
$interval.cancel(sec);
105
106
});
106
107
};
107
- }] );
108
+ });
108
109
</file>
109
110
<file name="index.html">
110
- <div ng-controller="MainCtrl">
111
- <button id="filterToggle" type="button" class="btn btn-success" ng-click="toggleFilterRow()">Toggle Filter</button>
112
- <button id="refreshButton" type="button" class="btn btn-success" ng-click="refreshData()">Refresh Data</button> <strong>Calls Pending:</strong> <span ng-bind="callsPending"></span>
111
+ <div ng-controller="MainCtrl as $ctrl ">
112
+ <button id="filterToggle" type="button" class="btn btn-success" ng-click="$ctrl. toggleFilterRow()">Toggle Filter</button>
113
+ <button id="refreshButton" type="button" class="btn btn-success" ng-click="$ctrl. refreshData()">Refresh Data</button> <strong>Calls Pending:</strong> <span ng-bind="$ctrl. callsPending"></span>
113
114
<br>
114
115
<br>
115
116
<strong>{{ myData.length }} rows</strong>
116
117
<br>
117
- <div id="grid1" ui-grid="gridOptions" ui-grid-cellNav ui-grid-edit ui-grid-resize-columns ui-grid-pinning ui-grid-selection ui-grid-move-columns ui-grid-importer ui-grid-exporter ui-grid-grouping class="grid"></div>
118
+ <div id="grid1" ui-grid="$ctrl. gridOptions" ui-grid-cellNav ui-grid-edit ui-grid-resize-columns ui-grid-pinning ui-grid-selection ui-grid-move-columns ui-grid-importer ui-grid-exporter ui-grid-grouping class="grid"></div>
118
119
</div>
119
120
</file>
120
121
<file name="main.css">
0 commit comments