Skip to content

Commit dc7c35b

Browse files
author
PaskalevStoyan
committed
chore: add edit, paging
1 parent 29cf95f commit dc7c35b

File tree

1 file changed

+34
-10
lines changed

1 file changed

+34
-10
lines changed

examples/kendo-react-freemium/src/pages/Projects.tsx

Lines changed: 34 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import {
99
GridColumn,
1010
GridCustomCellProps,
1111
GridFilterChangeEvent,
12+
GridItemChangeEvent,
1213
GridPageChangeEvent,
1314
GridSearchBox,
1415
GridToolbar,
@@ -219,6 +220,19 @@ export default function Projects() {
219220
setData(filterBy(projectsData, event.filter));
220221
};
221222

223+
const itemChange = (event: GridItemChangeEvent) => {
224+
const newData = data.map((item) =>
225+
item.ProjectID === event.dataItem.ProjectID
226+
? {
227+
...item,
228+
[event.field || '']: event.value
229+
}
230+
: item
231+
);
232+
233+
setData(newData);
234+
};
235+
222236
return (
223237
<div
224238
style={{ minHeight: "calc(100vh - 106px)" }}
@@ -255,16 +269,21 @@ export default function Projects() {
255269
filterable={true}
256270
onFilterChange={filterChange}
257271
// PAGER
258-
pageable={true}
259-
//
260-
// dataItemKey={DATA_ITEM_KEY}
261-
// edit={edit}
262-
// editable={true}
263-
// pageable={{
264-
// buttonCount: 6,
265-
// pageSizes: [5, 10, 15, 'All'],
266-
// pageSizeValue: pageSizeValue
267-
// }}
272+
pageable={
273+
{
274+
buttonCount: 6,
275+
pageSizes: [5, 10, 15, 'All'],
276+
277+
}
278+
}
279+
onItemChange={itemChange}
280+
defaultTake={10}
281+
defaultSkip={0}
282+
283+
// EDITING
284+
dataItemKey={"ProjectID"}
285+
editable={true}
286+
268287
>
269288
<GridToolbar>
270289
<GridSearchBox />
@@ -281,6 +300,8 @@ export default function Projects() {
281300
<GridColumn
282301
field="ProjectManager"
283302
title="Project Manager"
303+
editable={false}
304+
284305
width={245}
285306
cells={{
286307
data: ProjectManagerCell,
@@ -290,6 +311,7 @@ export default function Projects() {
290311
<GridColumn
291312
field="Stakeholders"
292313
title="Stakeholder(s)"
314+
editable={false}
293315
width={245}
294316
cells={{ data: StakeholderCell, filterCell: StakeholderFilterCell }}
295317
/>
@@ -298,6 +320,8 @@ export default function Projects() {
298320
title="Due Date"
299321
width={245}
300322
format="{0:d}"
323+
324+
301325
filter="date"
302326
/>
303327
<GridColumn

0 commit comments

Comments
 (0)