diff --git a/nkebao/src/App.tsx b/nkebao/src/App.tsx index f77b7005..86344416 100644 --- a/nkebao/src/App.tsx +++ b/nkebao/src/App.tsx @@ -49,7 +49,7 @@ function App() { }, []); return ( - + diff --git a/nkebao/src/components/UploadImage.tsx b/nkebao/src/components/UploadImage.tsx index 726f3dfa..489b8137 100644 --- a/nkebao/src/components/UploadImage.tsx +++ b/nkebao/src/components/UploadImage.tsx @@ -12,7 +12,14 @@ interface UploadImageProps { } const UploadImage: React.FC = ({ value = [], onChange, ...props }) => { - + // 受控 files 状态 + const [files, setFiles] = useState(value.map(url => ({ url }))); + + // value 变化时同步 files + useEffect(() => { + setFiles(value.map(url => ({ url }))); + }, [value]); + // 处理上传 const requestMethod = async (file: TDesignUploadFile) => { try { @@ -22,6 +29,7 @@ const UploadImage: React.FC = ({ value = [], onChange, ...prop response: { url }, + url, }; } catch (e: any) { return { @@ -34,21 +42,20 @@ const UploadImage: React.FC = ({ value = [], onChange, ...prop // 处理文件变更 const handleChange = (newFiles: TDesignUploadFile[]) => { - console.log(newFiles); - + setFiles(newFiles); const urls = newFiles.map(f => f.url).filter((url): url is string => Boolean(url)); onChange?.(urls); }; return ( ); };