import { useState } from 'react' import { Button, Form, Upload, message, } from "antd" import { uploadFileUrl } from '../../../../request/request' import { UploadOutlined } from '@ant-design/icons'; import './edit-app-files.css' export default function EditAppFiles(props: any) { // 定义允许上传的文件格式 const ALLOWED_FILE_TYPES = ['.pdf', '.doc', '.docx', '.jpg', '.jpeg', '.png']; const beforeUpload = (file: File) => { const fileExt = file.name.slice(file.name.lastIndexOf('.')).toLowerCase(); if (!ALLOWED_FILE_TYPES.includes(fileExt)) { message.error(`仅支持 ${ALLOWED_FILE_TYPES.join(', ')} 格式的文件`); return Upload.LIST_IGNORE; } return true; }; // 上传文件源码文档列表 const [upCodeArray, setUpCodeArray] = useState([]) const [codeDis, setCodeDis] = useState(false) const validateCodeFileUpload = (_rule: any, value: any) => { if (!value || value.fileList.length === 0) { return Promise.reject('请选择上传文件'); } const file = value.fileList[0]; if (file.status === 'uploading') { setCodeDis(true) return Promise.reject('文件上传中,请稍候'); } else if (file.status === 'error') { setCodeDis(true) setUpCodeArray([]) return Promise.reject('文件上传失败,请删除后重新上传'); } else if (file.status !== 'done') { setCodeDis(true) setUpCodeArray([]) return Promise.reject('文件上传失败,请删除后重新上传'); } else if (file.status === 'done') { setCodeDis(true) return Promise.resolve(); } return Promise.resolve(); }; // 上传文件软件文档列表 const [upSoftArray, setUpSoftArray] = useState([]) const [softDis, setSoftDis] = useState(false) const validateSoftFileUpload = (_rule: any, value: any) => { if (!value || value.fileList.length === 0) { return Promise.reject('请选择上传文件'); } const file = value.fileList[0]; if (file.status === 'uploading') { setSoftDis(true) return Promise.reject('文件上传中,请稍候'); } else if (file.status === 'error') { setSoftDis(true) setUpSoftArray([]) return Promise.reject('文件上传失败,请删除后重新上传'); } else if (file.status !== 'done') { setSoftDis(true) setUpSoftArray([]) return Promise.reject('文件上传失败,请删除后重新上传'); } else if (file.status === 'done') { setSoftDis(true) return Promise.resolve(); } return Promise.resolve(); }; const token = sessionStorage.getItem('token') const height = window.innerHeight - 460; const [form] = Form.useForm(); const handleSubmit = () => { // console.log(form); props.setEditProcess(4); // 调用表单实例的 submit 方法 form.submit(); }; const submitInfo = (values: any) => { message.success('提交成功'); console.log(values); props.setEditProcess(3); } const onFinish = (values: any) => { // 处理表单提交逻辑 console.log('表单提交成功', values); submitInfo(values) console.log(upCodeArray); }; return (
{ const errorMessages = errorInfo.errorFields.map((field: any) => field.errors[0]); if (errorMessages.some((msg: any) => msg.includes('文件上传失败'))) { message.error('文件上传失败,请重新上传'); } else if (errorMessages.some((msg: any) => msg.includes('文件上传中'))) { message.error('文件上传中,请稍候'); } else if (errorMessages.some((msg: any) => msg.includes('文件状态异常'))) { message.error('文件状态异常,请重新上传'); } else { message.error('请完善信息'); } }} >
源码文档:
{ console.log(fileList); // console.log(upCodeArray); }} onRemove={() => { setUpCodeArray([]) setCodeDis(false) }} beforeUpload={beforeUpload} // onChange={handleUploadChange} headers={{ 'Auth': `Bearer ${token}` }} >
[ 下载 ]
软件文档:
{ console.log(fileList); }} onRemove={() => { setUpSoftArray([]) setSoftDis(false) }} beforeUpload={beforeUpload} // onChange={handleUploadChange} headers={{ 'Auth': `Bearer ${token}` }} >
[ 下载 ]
{/* 循环100次 */} {Array.from({ length: 100 }).map((_, index) => ( 说明:1嘻嘻嘻啊司机大佬觉得拉家带口垃圾狄拉克 ))}
) }