Eight.vue 902 B

123456789101112131415161718192021222324252627282930313233
  1. <template>
  2. <el-row :gutter="20">
  3. <el-col :span="24">
  4. <el-form-item label="上传附件">
  5. <TableUpload v-model="mergedFiles" is-detail />
  6. </el-form-item>
  7. </el-col>
  8. </el-row>
  9. </template>
  10. <script setup lang="ts">
  11. import { fillFileListMetaInfo, type FileItem } from '@/components/UploadFile'
  12. const props = defineProps({
  13. dataForm: {
  14. type: Object,
  15. default: () => ({})
  16. }
  17. })
  18. const mergedFiles = ref<FileItem[]>([])
  19. watch(
  20. () => props.dataForm,
  21. (form) => {
  22. const elderFiles = form.elderFiles ? JSON.parse(form.elderFiles) : []
  23. const custodianFiles = form.custodianFiles ? JSON.parse(form.custodianFiles) : []
  24. const otherFiles = form.otherFiles ? JSON.parse(form.otherFiles) : []
  25. mergedFiles.value = [...elderFiles, ...custodianFiles, ...otherFiles]
  26. fillFileListMetaInfo(mergedFiles.value)
  27. },
  28. { immediate: true, deep: true }
  29. )
  30. </script>