diff --git a/packages/plugins/export/src/client/useExportAction.ts b/packages/plugins/export/src/client/useExportAction.ts index b8f836eae..7eef4f144 100644 --- a/packages/plugins/export/src/client/useExportAction.ts +++ b/packages/plugins/export/src/client/useExportAction.ts @@ -4,7 +4,7 @@ import { useBlockRequestContext, useCollection, useCollectionManager, - useCompile, + useCompile } from '@nocobase/client'; import { saveAs } from 'file-saver'; import { cloneDeep } from 'lodash'; @@ -39,13 +39,15 @@ export const useExportAction = () => { const { data } = await resource.export( { title: compile(title), - columns: JSON.stringify(compile(exportSettings)), appends: service.params[0]?.appends?.join(), filter: JSON.stringify(service.params[0]?.filter), sort: service.params[0]?.sort, }, { - method: 'get', + method: 'post', + data: { + columns: compile(exportSettings), + }, responseType: 'blob', }, ); diff --git a/packages/plugins/export/src/server/actions/export-xlsx.ts b/packages/plugins/export/src/server/actions/export-xlsx.ts index a78dbfdc0..6724c8c4e 100644 --- a/packages/plugins/export/src/server/actions/export-xlsx.ts +++ b/packages/plugins/export/src/server/actions/export-xlsx.ts @@ -5,8 +5,9 @@ import render from '../renders'; import { columns2Appends } from '../utils'; export async function exportXlsx(ctx: Context, next: Next) { - let { title, columns, filter, sort, fields, except } = ctx.action.params; + let { title, filter, sort, fields, except } = ctx.action.params; const { resourceName, resourceOf } = ctx.action; + let columns = ctx.action.params.values?.columns || ctx.action.params?.columns; if (typeof columns === 'string') { columns = JSON.parse(columns); }