diff --git a/src/components/Table/src/Table.vue b/src/components/Table/src/Table.vue index c7a0b44..9f88995 100644 --- a/src/components/Table/src/Table.vue +++ b/src/components/Table/src/Table.vue @@ -67,7 +67,7 @@ export default defineComponent({ const rnderTableColumn = (columns: TableColumn[]) => { return (props.selection ? [renderTableSelection()] : []).concat( - columns.map((v, i) => { + columns.map((v) => { if (v.type === 'index') { return ( {{ - default: () => + default: (data: TableSlotDefault) => // @ts-ignore - getSlot(slots, v.field, { row: props.data[i], field: v.field, index: i }) || - v?.formatter?.() || - props.data[i][v.field], + getSlot(slots, v.field, data) || v?.formatter?.() || data.row[v.field], // @ts-ignore header: getSlot(slots, `${v.field}-header`) }} diff --git a/src/views/Components/Table/DefaultTable.vue b/src/views/Components/Table/DefaultTable.vue index 30242f8..0405557 100644 --- a/src/views/Components/Table/DefaultTable.vue +++ b/src/views/Components/Table/DefaultTable.vue @@ -77,7 +77,7 @@ const getTableList = async () => { getTableList() -const acitonFn = (data: TableColumnDefault) => { +const acitonFn = (data: TableSlotDefault) => { console.log(data) } @@ -86,9 +86,9 @@ const acitonFn = (data: TableColumnDefault) => {
diff --git a/types/componentType/table.d.ts b/types/componentType/table.d.ts index f503a27..23f471a 100644 --- a/types/componentType/table.d.ts +++ b/types/componentType/table.d.ts @@ -3,8 +3,8 @@ declare type TableColumn = { label?: string } & Recordable -declare type TableColumnDefault = { +declare type TableSlotDefault = { row: Recordable - field: string - index: number -} + column: TableColumn + $index: number +} & Recordable