提升导出页面组件为公共组件。

This commit is contained in:
徐涛 2025-02-07 22:22:03 +08:00
parent 83dcb3f80f
commit 6728ca1be2
3 changed files with 10 additions and 11 deletions

View File

@ -1,10 +1,9 @@
import { useMemo, useState } from 'react';
import { HSegmentedControl } from '../../../components/HSegmentedControl';
import { Labeled } from '../../../components/Labeled';
import { ScrollArea } from '../../../components/ScrollArea';
import { useCopy } from '../../../hooks/useCopy';
import { Option, SchemeContent } from '../../../models';
import { QSchemeStorage } from '../../../q-scheme';
import { HSegmentedControl } from '../../components/HSegmentedControl';
import { Labeled } from '../../components/Labeled';
import { ScrollArea } from '../../components/ScrollArea';
import { useCopy } from '../../hooks/useCopy';
import { Option, SchemeContent, SchemeStorage } from '../../models';
import styles from './Export.module.css';
const exportOptions: Option[] = [
@ -13,11 +12,11 @@ const exportOptions: Option[] = [
{ label: 'Javascript Object', value: 'js_object' },
];
type QSchemeExportProps = {
scheme: SchemeContent<QSchemeStorage>;
type SchemeExportProps = {
scheme: SchemeContent<SchemeStorage>;
};
export function QSchemeExport({ scheme }: QSchemeExportProps) {
export function SchemeExport({ scheme }: SchemeExportProps) {
const [activeExport, setActiveExport] = useState<Option['value']>(exportOptions[0].value);
const exportContent = useMemo(() => {
switch (activeExport) {

View File

@ -3,8 +3,8 @@ import { useState } from 'react';
import { Tab } from '../../components/Tab';
import { SchemeContent } from '../../models';
import { QSchemeStorage } from '../../q-scheme';
import { SchemeExport } from './Export';
import { QSchemeBuilder } from './q-scheme/Builder';
import { QSchemeExport } from './q-scheme/Export';
import { QSchemePreview } from './q-scheme/Preview';
const tabOptions = [
@ -29,7 +29,7 @@ export function QScheme({ scheme }: QSchemeProps) {
{isEqual(activeTab, 'builder') && (
<QSchemeBuilder scheme={scheme} onBuildCompleted={() => setActiveTab('overview')} />
)}
{isEqual(activeTab, 'export') && <QSchemeExport scheme={scheme} />}
{isEqual(activeTab, 'export') && <SchemeExport scheme={scheme} />}
</>
);
}