Browse Source

优化公用上传附件组件的bug

intex_online20250410
王宇飞 2 weeks ago
parent
commit
17564fcd18
  1. 15
      src/components/UploadFile/src/UploadFile.vue
  2. 1
      src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue

15
src/components/UploadFile/src/UploadFile.vue

@ -71,6 +71,7 @@ const props = defineProps({
const valueRef = ref(props.modelValue) const valueRef = ref(props.modelValue)
const uploadRef = ref<UploadInstance>() const uploadRef = ref<UploadInstance>()
const uploadList = ref<UploadUserFile[]>([]) const uploadList = ref<UploadUserFile[]>([])
const allUploadList = ref<UploadUserFile[]>([])
const fileList = props.modelValue && props.modelValue.length > 0 ? ref<UploadUserFile[]>(props.modelValue) : ref<UploadUserFile[]>([]) const fileList = props.modelValue && props.modelValue.length > 0 ? ref<UploadUserFile[]>(props.modelValue) : ref<UploadUserFile[]>([])
const uploadNumber = ref<number>(0) const uploadNumber = ref<number>(0)
const uploadHeaders = ref({ const uploadHeaders = ref({
@ -109,14 +110,20 @@ const beforeUpload: UploadProps['beforeUpload'] = (file: UploadRawFile) => {
// } // }
// //
const handleFileSuccess: UploadProps['onSuccess'] = (res: any,uploadFile: any): void => { const handleFileSuccess: UploadProps['onSuccess'] = (res: any,uploadFile: any): void => {
message.success(t('ts.上传成功')) message.success(t('ts.上传成功'))
const fileListNew = fileList.value // const fileListNew = fileList.value
fileListNew.pop() // fileListNew.pop()
fileList.value = fileListNew // fileList.value = fileListNew
uploadList.value.push({ name: uploadFile.name, url: res.data }) uploadList.value.push({ name: uploadFile.name, url: res.data })
// if (uploadList.value.length == uploadNumber.value) { // if (uploadList.value.length == uploadNumber.value) {
if(fileList.value.every(it => it.status == 'success')) { if(fileList.value.every(it => it.status == 'success')) {
fileList.value = fileList.value.concat(uploadList.value) allUploadList.value = allUploadList.value.concat(uploadList.value)
fileList.value.forEach(item=>{
if(!item.url){
item.url = item.response.data
}
})
uploadList.value = [] uploadList.value = []
uploadNumber.value = 0 uploadNumber.value = 0
emit('update:modelValue', listToString(fileList.value),res,uploadFile) emit('update:modelValue', listToString(fileList.value),res,uploadFile)

1
src/views/wms/supplierManage/supplierinvoice/supplierinvoiceRequestMain/index.vue

@ -1108,6 +1108,7 @@ const detailAnnexTable = ref([
showPreview: true, showPreview: true,
showDownload: true, showDownload: true,
fileSize: 20, fileSize: 20,
limit:10000000,
fileType: ['pdf', 'ofd'] fileType: ['pdf', 'ofd']
}, },
{ {

Loading…
Cancel
Save