13
13
<span ></span >
14
14
</div >
15
15
<pdfexport ref =" gridPdfExport" >
16
- <Grid ref =" grid" :style =" { height: '500px ' }" :data-items =" gridData" :resizable = " true " :reorderable =" true"
17
- :sortable =" true" :pageable =" gridPageable" :groupable =" true" :group =" group" :sort =" sort" :filter = " filter "
18
- :take =" take" :skip =" skip" :expand-field =" expandField" :selectable =" true" :selected-field = " selectedField "
19
- :columns =" columns" :column-menu =" columnMenu" @selectionchange = " onSelectionChange "
20
- @headerselectionchange = " onHeaderSelectionChange " @datastatechange = " dataStateChange "
21
- @expandchange =" expandChange" >
16
+ <Grid ref =" grid" :style =" { height: gridHeight + 'px ' }" :data-items =" gridData" :resizable =" true"
17
+ :reorderable = " true " : sortable =" true" :pageable =" gridPageable" :groupable =" true" :group =" group" :sort =" sort"
18
+ :filter = " filter " : take =" take" :skip =" skip" :expand-field =" expandField" :selectable =" true"
19
+ :selected-field = " selectedField " : columns =" columns" :column-menu =" columnMenu"
20
+ @selectionchange = " onSelectionChange " @headerselectionchange = " onHeaderSelectionChange "
21
+ @datastatechange = " dataStateChange " @ expandchange =" expandChange" >
22
22
<toolbar >
23
23
<span class =" k-textbox k-grid-search k-display-flex" >
24
24
<k-input :style =" { width: '230px' }" :placeholder =" gridSearchMessage" :value =" searchWord" @input =" onFilter" >
@@ -117,7 +117,6 @@ export default {
117
117
employees: employees,
118
118
gridData: [],
119
119
skip: 0 ,
120
- take: 10 ,
121
120
group: [],
122
121
sort: [],
123
122
filter: null ,
@@ -129,6 +128,14 @@ export default {
129
128
this .onTeamChange (25 );
130
129
},
131
130
computed: {
131
+ gridHeight () {
132
+ const newGridHeight = document .querySelectorAll (" .k-drawer-container" )[0 ].offsetHeight - 280 ;
133
+ return newGridHeight < 500 ? 500 : newGridHeight;
134
+ },
135
+ take () {
136
+ // Divide the Grid Heigh by the height of a single row
137
+ return Math .floor (this .gridHeight / 56 );
138
+ },
132
139
selectedDataItems () {
133
140
return this .gridData .data .filter ((item ) => item .selected === true );
134
141
},
@@ -320,7 +327,6 @@ export default {
320
327
onFilter (e ) {
321
328
let inputValue = e .value ;
322
329
this .searchWord = inputValue;
323
- this .take = 10 ;
324
330
this .skip = 0 ;
325
331
if (inputValue !== ' ' ) {
326
332
this .filter = {
@@ -379,12 +385,10 @@ export default {
379
385
},
380
386
createAppState : function (dataState ) {
381
387
this .group = dataState .group ;
382
- this .take = dataState .take ;
383
388
this .skip = dataState .skip ;
384
389
this .sort = dataState .sort ;
385
390
this .filter = dataState .filter ;
386
-
387
- this .gridData = this .getData (this .employees );
391
+ this .gridData = this .myTeamSelected ? this .getData (this .employees .slice (0 , 25 )) : this .getData (this .employees );
388
392
},
389
393
dataStateChange : function (event ) {
390
394
this .createAppState (event .data );
@@ -427,10 +431,10 @@ export default {
427
431
slicedEmployees = this .employees .slice (0 , pageSize);
428
432
this .myTeamSelected = false ;
429
433
}
430
- this .getData (slicedEmployees);
434
+ this .gridData = this . getData (slicedEmployees);
431
435
},
432
- getSelectColumnWidth (theme ){
433
- return theme === " Default" ? " 42px" : theme === " Material" ? " 65px" : " 32px" ;
436
+ getSelectColumnWidth (theme ) {
437
+ return theme === " Default" ? " 42px" : theme === " Material" ? " 65px" : " 32px" ;
434
438
}
435
439
},
436
440
};
0 commit comments