diff --git a/src/pages/studio/components/ExportDialog.tsx b/src/pages/studio/components/ExportDialog.tsx index 9344cea..f8af539 100644 --- a/src/pages/studio/components/ExportDialog.tsx +++ b/src/pages/studio/components/ExportDialog.tsx @@ -15,6 +15,7 @@ type CreateOptions = { removeViewItem?: boolean; before?: string; after?: string; + removeId?: boolean; } export const ExportDialog = () => { const { showExportDialog, setShowExportDialog, exportRoutes } = useStudioStore( @@ -26,7 +27,7 @@ export const ExportDialog = () => { ); const [copied, setCopied] = useState(false); const [before, setBefore] = useState(() => { - const defaultBefore = `import { createQueryApi } from '@kevisual/query/api';`; + const defaultBefore = `import { createQueryApi } from '@kevisual/query/api';`; if (typeof window !== 'undefined') { return localStorage.getItem('exportBefore') || defaultBefore; } @@ -45,6 +46,12 @@ export const ExportDialog = () => { } return false; }); + const [removeId, setRemoveId] = useState(() => { + if (typeof window !== 'undefined') { + return localStorage.getItem('exportRemoveId') !== 'false'; + } + return true; + }); // 保存配置到 localStorage useEffect(() => { @@ -59,6 +66,10 @@ export const ExportDialog = () => { localStorage.setItem('exportRemoveViewItem', String(removeViewItem)); }, [removeViewItem]); + useEffect(() => { + localStorage.setItem('exportRemoveId', String(removeId)); + }, [removeId]); + const code = useMemo(() => { if (!exportRoutes) return ''; let routeInfo = exportRoutes.map(route => pick(route, ['path', 'key', 'id', 'description', 'metadata'])); @@ -66,10 +77,11 @@ export const ExportDialog = () => { before, after, removeViewItem, + removeId, }; const query = createQueryByRoutes(cloneDeep(routeInfo as any), options); return query; - }, [exportRoutes, before, after, removeViewItem]); + }, [exportRoutes, before, after, removeViewItem, removeId]); const handleCopy = async () => { try { @@ -91,7 +103,7 @@ export const ExportDialog = () => {