Commit 05329ce9501eb899a0bbb45320e5807c83372317

Authored by 无木
1 parent 7b76945b

fix(upload): ensure the value type is correct

修复BasicUpload组件在设置null值时的问题
CHANGELOG.zh_CN.md
@@ -6,6 +6,7 @@ @@ -6,6 +6,7 @@
6 - 新增`headerTop`插槽 6 - 新增`headerTop`插槽
7 - **AppSearch** 修复可能会搜索隐藏菜单的问题 7 - **AppSearch** 修复可能会搜索隐藏菜单的问题
8 - **TableAction** 仅在 action.tooltip 存在的情况下 才包裹 Tooltip 组件 8 - **TableAction** 仅在 action.tooltip 存在的情况下 才包裹 Tooltip 组件
  9 +- **BasicUpload** 修复处理非`array`值时报错的问题
9 - **其它** 10 - **其它**
10 - 修复菜单默认折叠的配置不起作用的问题 11 - 修复菜单默认折叠的配置不起作用的问题
11 - 修复`safari`浏览器报错导致网站打不开 12 - 修复`safari`浏览器报错导致网站打不开
src/components/Upload/src/BasicUpload.vue
@@ -46,6 +46,7 @@ @@ -46,6 +46,7 @@
46 import { uploadContainerProps } from './props'; 46 import { uploadContainerProps } from './props';
47 import { omit } from 'lodash-es'; 47 import { omit } from 'lodash-es';
48 import { useI18n } from '/@/hooks/web/useI18n'; 48 import { useI18n } from '/@/hooks/web/useI18n';
  49 + import { isArray } from '/@/utils/is';
49 50
50 export default defineComponent({ 51 export default defineComponent({
51 name: 'BasicUpload', 52 name: 'BasicUpload',
@@ -77,7 +78,7 @@ @@ -77,7 +78,7 @@
77 watch( 78 watch(
78 () => props.value, 79 () => props.value,
79 (value = []) => { 80 (value = []) => {
80 - fileList.value = value; 81 + fileList.value = isArray(value) ? value : [];
81 }, 82 },
82 { immediate: true } 83 { immediate: true }
83 ); 84 );
src/components/Upload/src/UploadPreviewModal.vue
@@ -20,6 +20,7 @@ @@ -20,6 +20,7 @@
20 import { downloadByUrl } from '/@/utils/file/download'; 20 import { downloadByUrl } from '/@/utils/file/download';
21 import { createPreviewColumns, createPreviewActionColumn } from './data'; 21 import { createPreviewColumns, createPreviewActionColumn } from './data';
22 import { useI18n } from '/@/hooks/web/useI18n'; 22 import { useI18n } from '/@/hooks/web/useI18n';
  23 + import { isArray } from '/@/utils/is';
23 24
24 export default defineComponent({ 25 export default defineComponent({
25 components: { BasicModal, FileList }, 26 components: { BasicModal, FileList },
@@ -33,6 +34,7 @@ @@ -33,6 +34,7 @@
33 watch( 34 watch(
34 () => props.value, 35 () => props.value,
35 (value) => { 36 (value) => {
  37 + if (!isArray(value)) value = [];
36 fileListRef.value = value 38 fileListRef.value = value
37 .filter((item) => !!item) 39 .filter((item) => !!item)
38 .map((item) => { 40 .map((item) => {