From f192f5028038657bd9554fcbd15bc80fdf8465e9 Mon Sep 17 00:00:00 2001 From: jxx <283591387@qq.com> Date: Fri, 21 Nov 2025 12:14:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E9=87=8D=E7=BD=AE=E4=B8=8A?= =?UTF-8?q?=E4=BC=A0=E6=96=87=E4=BB=B6=E5=90=8D=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/components/VolProvider/VolProvider.js | 27 ++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/vol.web/src/components/VolProvider/VolProvider.js b/vol.web/src/components/VolProvider/VolProvider.js index 3b144524..248d7bf6 100644 --- a/vol.web/src/components/VolProvider/VolProvider.js +++ b/vol.web/src/components/VolProvider/VolProvider.js @@ -321,6 +321,30 @@ const getSearchParameters = (proxy, formFields, formRules) => { return wheres } + +const generateUniqueFileName = (originalFileName) => { + const timestamp = new Date().getTime(); + const random = Math.random().toString(36).substring(2, 8); + const parts = originalFileName.split('.'); + const fileExtension = parts.length > 1 ? parts.pop().toLowerCase() : ''; + let uniqueFileName = `${timestamp}_${random}.${fileExtension}` + return uniqueFileName; +}; +//重置文件名 +const resetFileName = async (files, callbck) => { + if (!files?.length) return + for (let index = 0; index < files.length; index++) { + let originalFile = files[index] + const uniqueFileName = await callbck?.(originalFile) || generateUniqueFileName(originalFile.name); + const newFile = new File([originalFile], uniqueFileName, { + type: originalFile.type, + lastModified: originalFile.lastModified + }); + files.splice(index, 1, newFile); + } +} + + export default { getFormValues, resetForm, @@ -335,5 +359,6 @@ export default { getItem, getAccessToken, isEmptyValue, - getSearchParameters + getSearchParameters, + resetFileName }