Commit a0681cca8f9de2e3686001fa715f53f6fc3cf1a1
1 parent
09c9f8a8
fix(demo): fix demo error
Showing
2 changed files
with
21 additions
and
18 deletions
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() { |