diff --git a/playground/app/pages/components/table.vue b/playground/app/pages/components/table.vue
index 46c3799b8b..b83692ff50 100644
--- a/playground/app/pages/components/table.vue
+++ b/playground/app/pages/components/table.vue
@@ -362,6 +362,18 @@ onMounted(() => {
{{ row.original }}
+
+
+
+ body top
+
+
+
+
+
+ body bottom
+
+
diff --git a/src/runtime/components/Table.vue b/src/runtime/components/Table.vue
index f66a68c1ff..8daf87db64 100644
--- a/src/runtime/components/Table.vue
+++ b/src/runtime/components/Table.vue
@@ -173,10 +173,12 @@ type DynamicHeaderSlots = Record = Record) => any> & Record<`${K extends string ? K : never}-cell`, (props: CellContext) => any>
export type TableSlots = {
- expanded: (props: { row: Row }) => any
- empty: (props?: {}) => any
- loading: (props?: {}) => any
- caption: (props?: {}) => any
+ 'expanded': (props: { row: Row }) => any
+ 'empty': (props?: {}) => any
+ 'loading': (props?: {}) => any
+ 'caption': (props?: {}) => any
+ 'body-top': (props?: {}) => any
+ 'body-bottom': (props?: {}) => any
} & DynamicHeaderSlots & DynamicCellSlots
@@ -369,6 +371,8 @@ defineExpose({
+
+
+
+