Commit a0681cca8f9de2e3686001fa715f53f6fc3cf1a1

Authored by vben
1 parent 09c9f8a8

fix(demo): fix demo error

src/components/Table/src/components/editable/index.ts
@@ -41,12 +41,14 @@ export function renderEditCell(column: BasicColumn) { @@ -41,12 +41,14 @@ export function renderEditCell(column: BasicColumn) {
41 }; 41 };
42 } 42 }
43 43
44 -export type EditRecordRow<T = Hash<any>> = {  
45 - onEdit: (editable: boolean, submit?: boolean) => Promise<boolean>;  
46 - editable: boolean;  
47 - onCancel: Fn;  
48 - onSubmit: Fn;  
49 - submitCbs: Fn[];  
50 - cancelCbs: Fn[];  
51 - validCbs: Fn[];  
52 -} & T; 44 +export type EditRecordRow<T = Hash<any>> = Partial<
  45 + {
  46 + onEdit: (editable: boolean, submit?: boolean) => Promise<boolean>;
  47 + editable: boolean;
  48 + onCancel: Fn;
  49 + onSubmit: Fn;
  50 + submitCbs: Fn[];
  51 + cancelCbs: Fn[];
  52 + validCbs: Fn[];
  53 + } & T
  54 +>;
src/views/demo/page/form/high/PersonTable.vue
@@ -16,7 +16,6 @@ @@ -16,7 +16,6 @@
16 TableAction, 16 TableAction,
17 BasicColumn, 17 BasicColumn,
18 ActionItem, 18 ActionItem,
19 - renderEditableRow,  
20 EditTableHeaderIcon, 19 EditTableHeaderIcon,
21 EditRecordRow, 20 EditRecordRow,
22 } from '/@/components/Table'; 21 } from '/@/components/Table';
@@ -25,17 +24,21 @@ @@ -25,17 +24,21 @@
25 { 24 {
26 title: '成员姓名', 25 title: '成员姓名',
27 dataIndex: 'name', 26 dataIndex: 'name',
28 - customRender: renderEditableRow({ dataIndex: 'name', placeholder: '请输入成员姓名' }), 27 + editRow: true,
29 }, 28 },
30 { 29 {
31 title: '工号', 30 title: '工号',
32 dataIndex: 'no', 31 dataIndex: 'no',
33 - customRender: renderEditableRow({ dataIndex: 'no', placeholder: '请输入工号' }), 32 + editRow: true,
  33 +
  34 + // customRender: renderEditableRow({ dataIndex: 'no', placeholder: '请输入工号' }),
34 }, 35 },
35 { 36 {
36 title: '所属部门', 37 title: '所属部门',
37 dataIndex: 'dept', 38 dataIndex: 'dept',
38 - customRender: renderEditableRow({ dataIndex: 'dept', placeholder: '请输入所属部门' }), 39 + editRow: true,
  40 +
  41 + // customRender: renderEditableRow({ dataIndex: 'dept', placeholder: '请输入所属部门' }),
39 }, 42 },
40 ]; 43 ];
41 44
@@ -73,12 +76,11 @@ @@ -73,12 +76,11 @@
73 }); 76 });
74 77
75 function handleEdit(record: EditRecordRow) { 78 function handleEdit(record: EditRecordRow) {
76 - record.editable = true; 79 + record.onEdit?.(true);
77 } 80 }
78 81
79 function handleCancel(record: EditRecordRow) { 82 function handleCancel(record: EditRecordRow) {
80 - record.editable = false;  
81 - record.onCancel && record.onCancel(); 83 + record.onEdit?.(false);
82 if (record.isNew) { 84 if (record.isNew) {
83 const data = getDataSource(); 85 const data = getDataSource();
84 const index = data.findIndex((item) => item.key === record.key); 86 const index = data.findIndex((item) => item.key === record.key);
@@ -87,8 +89,7 @@ @@ -87,8 +89,7 @@
87 } 89 }
88 90
89 function handleSave(record: EditRecordRow) { 91 function handleSave(record: EditRecordRow) {
90 - record.editable = false;  
91 - record.onSubmit && record.onSubmit(); 92 + record.onEdit?.(false, true);
92 } 93 }
93 94
94 function handleAdd() { 95 function handleAdd() {