'use client' import { useState } from 'react' import { ThemeProvider } from 'next-themes' import FileUpload from '@/components/tools/compressor/FileUpload' import CompressionOptions from '@/components/tools/compressor/CompressionOptions' import CompressionResult from '@/components/tools/compressor/CompressionResult' import ThemeToggle from '@/components/tools/compressor/ThemeToggle' import Instructions from '@/components/tools/compressor/Instructions' import useImageCompression from '@/hooks/useImageCompression' export default function ImageCompressor() { const [file, setFile] = useState(null) const { compressImage, compressedImage, isCompressing, progress, error } = useImageCompression() const handleCompress = async (format: string) => { if (file) { await compressImage(file, format) } } return (

图片压缩工具

{file && ( )} {compressedImage && ( )} {error && (

{error}

)}
) }