feat: 本次提交更新内容如下

This commit is contained in:
笔记本里的永平
2025-07-15 16:08:33 +08:00
parent 0e8bb566b5
commit df72e84ea1
8 changed files with 38 additions and 1262 deletions

View File

@@ -1,4 +1,4 @@
import React, { useState, useEffect } from 'react';
import React from 'react';
import { Upload } from 'tdesign-mobile-react';
import type { UploadFile as TDesignUploadFile } from 'tdesign-mobile-react/es/upload/type';
import { uploadImage } from '@/api/upload';
@@ -12,14 +12,6 @@ interface UploadImageProps {
}
const UploadImage: React.FC<UploadImageProps> = ({ value = [], onChange, ...props }) => {
// 受控 files 状态
const [files, setFiles] = useState<TDesignUploadFile[]>(value.map(url => ({ url })));
// value 变化时同步 files
useEffect(() => {
setFiles(value.map(url => ({ url })));
}, [value]);
// 处理上传
const requestMethod = async (file: TDesignUploadFile) => {
try {
@@ -42,14 +34,13 @@ const UploadImage: React.FC<UploadImageProps> = ({ value = [], onChange, ...prop
// 处理文件变更
const handleChange = (newFiles: TDesignUploadFile[]) => {
setFiles(newFiles);
const urls = newFiles.map(f => f.url).filter((url): url is string => Boolean(url));
onChange?.(urls);
};
return (
<Upload
files={files}
files={value.map(url => ({ url }))}
requestMethod={requestMethod}
onChange={handleChange}
multiple