Commit 437692869a232ee65c300c65ee473557ae0913c7

Authored by 无木
1 parent 495b1da3

fix(upload): ensure preview items valid

src/components/Upload/src/UploadPreviewModal.vue
@@ -11,7 +11,7 @@ @@ -11,7 +11,7 @@
11 </BasicModal> 11 </BasicModal>
12 </template> 12 </template>
13 <script lang="ts"> 13 <script lang="ts">
14 - import { defineComponent, watch, ref, unref } from 'vue'; 14 + import { defineComponent, watch, ref } from 'vue';
15 15
16 // import { BasicTable, useTable } from '/@/components/Table'; 16 // import { BasicTable, useTable } from '/@/components/Table';
17 import FileList from './FileList'; 17 import FileList from './FileList';
@@ -36,17 +36,15 @@ @@ -36,17 +36,15 @@
36 watch( 36 watch(
37 () => props.value, 37 () => props.value,
38 (value) => { 38 (value) => {
39 - fileListRef.value = [];  
40 - value.forEach((item) => {  
41 - fileListRef.value = [  
42 - ...unref(fileListRef),  
43 - { 39 + fileListRef.value = value
  40 + .filter((item) => !!item)
  41 + .map((item) => {
  42 + return {
44 url: item, 43 url: item,
45 type: item.split('.').pop() || '', 44 type: item.split('.').pop() || '',
46 name: item.split('/').pop() || '', 45 name: item.split('/').pop() || '',
47 - },  
48 - ];  
49 - }); 46 + };
  47 + });
50 }, 48 },
51 { immediate: true } 49 { immediate: true }
52 ); 50 );