Ver código fonte

修改上传

lex 1 ano atrás
pai
commit
753e768054

+ 4 - 0
src/views/natural-resources/components/my-resources/index.tsx

@@ -54,6 +54,7 @@ export default defineComponent({
       show: false,
       item: {} as any,
       editStatus: false, // 是否编辑
+      isAdd: false,
       editList: [] as any, // TOD
       editIds: [] as any, // 编辑的
       editOverIds: [] as any, // 确认修改的数据
@@ -203,6 +204,7 @@ export default defineComponent({
               return;
             }
             state.uploadStatus = true;
+            state.isAdd = false;
           }}
           onEditOver={async (status: boolean) => {
             state.editStatus = status;
@@ -377,6 +379,7 @@ export default defineComponent({
               onSearch(state.searchGroup);
             }}
             list={state.editList}
+            showDelete={state.isAdd}
             onEditAll={(list: any) => {
               try {
                 state.tableList.forEach((table: any) => {
@@ -425,6 +428,7 @@ export default defineComponent({
               });
               state.editList = [...temp];
               state.uploadStatus = true;
+              state.isAdd = true;
               state.editStatus = false;
             }}
           />

+ 16 - 3
src/views/natural-resources/components/my-resources/save-modal/index.tsx

@@ -86,11 +86,27 @@ export default defineComponent({
 
     const fileListRef = ref<UploadFileInfo[]>([]);
     const uploadList = ref([] as any);
+
+    // 获取文件后缀名
+    // function getFileExtension(filename: string) {
+    //   return filename.slice(((filename.lastIndexOf('.') - 1) >>> 0) + 2);
+    // }
+
+    // // 判断是否是允许的文件类型
+    // function isAllowedFileType(filename: string, allowedExtensions: any) {
+    //   const extension = getFileExtension(filename).toLowerCase();
+    //   return allowedExtensions.includes(extension);
+    // }
+
     const onBeforeUpload = async (options: any) => {
       const file = options.file;
       // 文件大小
       let isLt2M = true;
 
+      // JPG、PNG、MP3、MP4、PPT
+      // const filename = 'example.jpg';
+      // const allowedExtensions = ['jpg', 'jpeg', 'png', 'mp4', 'ppt'];
+
       const type = file.type.includes('image')
         ? NaturalTypeEnum.IMG
         : file.type.includes('audio')
@@ -103,8 +119,6 @@ export default defineComponent({
         ? NaturalTypeEnum.PPT
         : 'other';
 
-      console.log(type, 'type');
-
       if (type === 'other') {
         message.error(`文件格式不支持`);
         return false;
@@ -392,7 +406,6 @@ export default defineComponent({
           list.push(item);
         }
       });
-      console.log(fileListRef.value, uploadList.value);
       emit('confrim', list);
     };
 

+ 9 - 0
src/views/natural-resources/components/my-resources/upload-modal/index.module.less

@@ -43,6 +43,13 @@
       z-index: 99;
     }
 
+    &:hover {
+      .iconUploadDelete {
+        opacity: 1;
+        display: block;
+      }
+    }
+
     .iconUploadDelete {
       position: absolute;
       top: 7px;
@@ -51,6 +58,8 @@
       height: 27px;
       z-index: 99;
       cursor: pointer;
+      opacity: 0;
+      display: none;
     }
 
     .commonType {

+ 6 - 2
src/views/natural-resources/components/my-resources/upload-modal/index.tsx

@@ -27,7 +27,7 @@ import iconVideo from '@common/images/icon-video.png';
 import iconAudio from '@common/images/icon-audio.png';
 import iconMusic from '@common/images/icon-music.png';
 import iconPPT from '@common/images/icon-ppt.png';
-import iconUploadDelete from '../../../images/btn-remove.png';
+import iconUploadDelete from '../../../images/btn-remove2.png';
 import { materialSave, materialUpdateAll } from '../../../api';
 import { NaturalTypeEnum } from '@/enums/pageEnum';
 import { scrollToErrorForm } from '/src/utils';
@@ -54,6 +54,10 @@ export default defineComponent({
       type: Array,
       default: () => []
     },
+    showDelete: {
+      type: Boolean,
+      default: false
+    },
     editStatus: {
       type: Boolean,
       default: true
@@ -211,7 +215,7 @@ export default defineComponent({
                       objectFit="cover"
                     />
                     {/* 编辑时不能删除 */}
-                    {!isUpdate.value && (
+                    {(!isUpdate.value || props.showDelete) && (
                       <img
                         class={[styles.iconUploadDelete]}
                         src={iconUploadDelete}

BIN
src/views/natural-resources/images/btn-remove2.png