Преглед на файлове

✨ feat: 新增特征词-搜索页文件上传功能

WanGxC преди 8 месеца
родител
ревизия
c8e9a1d28f
променени са 3 файла, в които са добавени 12 реда и са изтрити 7 реда
  1. 4 4
      src/components/FileUploader/index.vue
  2. 3 1
      src/views/featureWord/queryPage/WeightTable.vue
  3. 5 2
      src/views/featureWord/queryPage/api.ts

+ 4 - 4
src/components/FileUploader/index.vue

@@ -17,7 +17,9 @@ async function handleCustomUpload(uploadRequest: any) {
   try {
     loading.value = true;
     const { file } = uploadRequest;
-    const response = await attrs.api.uploadFile(file);
+    const formData = new FormData();
+    formData.append('file', file);
+    const response = await attrs.api(formData);
     handleResponse(response);
     uploadRequest.onSuccess(response);
   } catch (error) {
@@ -29,7 +31,6 @@ async function handleCustomUpload(uploadRequest: any) {
   }
 }
 
-//
 function handleExceed(files: any) {
   upload.value!.clearFiles();
   const file = files[0] as UploadRawFile;
@@ -38,7 +39,6 @@ function handleExceed(files: any) {
   upload.value!.submit();
 }
 
-//
 function handleResponse(response: any) {
   if (response.code === SUCCESS_CODE) {
     ElMessage.success({ message: response.msg, plain: true });
@@ -59,7 +59,7 @@ function handleResponse(response: any) {
       :http-request="handleCustomUpload"
       :limit="1"
       :on-exceed="handleExceed"
-      :show-file-list="false"
+      :show-file-list="attrs.showFileList"
       action="#"
       v-bind="attrs">
     <template #trigger>

+ 3 - 1
src/views/featureWord/queryPage/WeightTable.vue

@@ -2,6 +2,7 @@
 import { inject, onBeforeMount, onBeforeUnmount, Ref, ref } from 'vue';
 import { usePagination } from '/@/utils/usePagination';
 import * as api from './api';
+import { uploadFile } from './api';
 import emitter from '/@/utils/emitter';
 import { useElTableData } from '/@/utils/useElTableData';
 import FileUploader from '/@/components/FileUploader/index.vue';
@@ -57,10 +58,11 @@ function handleUploadError() {
     <el-descriptions title="/ 特征词与权重 /">
       <template #extra>
         <FileUploader
-            :api="{ uploadFile: api.uploadFile }"
+            :api="api.uploadFile"
             plain
             round
             type="warning"
+            :showFileList="false"
             @upload-success="handleUploadSuccess"
             @upload-error="handleUploadError"
         >文件上传

+ 5 - 2
src/views/featureWord/queryPage/api.ts

@@ -19,10 +19,13 @@ export function getFeatureWordData(query: any) {
   });
 }
 
-export function uploadFile(body: any) {
+export function uploadFile(formData: any) {
   return request({
     url: apiPrefix + 'wordsresource/',
     method: 'POST',
-    data: body,
+    data: formData,
+    headers: {
+      'Content-Type': 'multipart/form-data',
+    },
   });
 }