From 929d7c463f2880a59deef2ec4d377868bd27d9cc Mon Sep 17 00:00:00 2001 From: roymondchen Date: Mon, 7 Nov 2022 16:23:57 +0800 Subject: [PATCH] =?UTF-8?q?fix(form):=20table=20=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/design/src/Pagination.vue | 4 ++-- packages/form/src/containers/Table.vue | 13 +++++++++++-- packages/form/src/schema.ts | 1 + 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/packages/design/src/Pagination.vue b/packages/design/src/Pagination.vue index 1c4e67bc..3d98dc45 100644 --- a/packages/design/src/Pagination.vue +++ b/packages/design/src/Pagination.vue @@ -27,10 +27,10 @@ const uiProps = computed(() => uiComponent.props(props)); const emit = defineEmits(['size-change', 'current-change']); -const handleSizeChange = (args: any[]) => { +const handleSizeChange = (...args: any[]) => { emit('size-change', ...args); }; -const handleCurrentChange = (args: any[]) => { +const handleCurrentChange = (...args: any[]) => { emit('current-change', ...args); }; diff --git a/packages/form/src/containers/Table.vue b/packages/form/src/containers/Table.vue index bb312ce1..813a97a6 100644 --- a/packages/form/src/containers/Table.vue +++ b/packages/form/src/containers/Table.vue @@ -7,7 +7,7 @@ v-if="model[modelName]" ref="tMagicTable" style="width: 100%" - :data="model[modelName]" + :data="data" :border="config.border" :max-height="config.maxHeight" :default-expand-all="true" @@ -143,7 +143,7 @@ 清空 -
+
props.name || props.config.name || ''); +const data = computed(() => + props.config.pagination + ? props.model[modelName.value].filter( + (item: any, index: number) => + index >= pagecontext.value * pagesize.value && index + 1 <= (pagecontext.value + 1) * pagesize.value, + ) + : props.model[modelName.value], +); + const sortChange = ({ prop, order }: SortProp) => { if (order === 'ascending') { props.model[modelName.value] = props.model[modelName.value].sort((a: any, b: any) => a[prop] - b[prop]); diff --git a/packages/form/src/schema.ts b/packages/form/src/schema.ts index ff8b8a65..16d516d3 100644 --- a/packages/form/src/schema.ts +++ b/packages/form/src/schema.ts @@ -610,6 +610,7 @@ export interface TableConfig extends FormItem { border?: boolean; /** 显示行号 */ showIndex?: boolean; + pagination?: boolean; enum?: any[]; /** 是否显示添加按钮 */ addable?: (mForm: FormState | undefined, data: any) => boolean | 'undefined' | boolean;