浏览代码

chore(uploader): edit web method put upload type

richard1015 3 年之前
父节点
当前提交
df0fd5adc9
共有 2 个文件被更改,包括 9 次插入1 次删除
  1. 3 0
      src/packages/__VUE/uploader/index.vue
  2. 6 1
      src/packages/__VUE/uploader/uploader.ts

+ 3 - 0
src/packages/__VUE/uploader/index.vue

@@ -185,6 +185,9 @@ export default create({
       uploadOption.xhrState = props.xhrState as number;
       uploadOption.headers = props.headers;
       uploadOption.withCredentials = props.withCredentials;
+      try {
+        uploadOption.sourceFile = fileItem.formData.get(props.name);
+      } catch (error) {}
       uploadOption.onStart = (option: UploadOptions) => {
         fileItem.status = 'ready';
         fileItem.message = translate('readyUpload');

+ 6 - 1
src/packages/__VUE/uploader/uploader.ts

@@ -3,6 +3,7 @@ export class UploadOptions {
   name = 'file';
   fileType? = 'image';
   formData?: FormData;
+  sourceFile: any;
   method = 'post';
   xhrState = 200;
   timeout = 30 * 1000;
@@ -47,7 +48,11 @@ export class Uploader {
         xhr.setRequestHeader(key, value as string);
       }
       options.onStart?.(options);
-      xhr.send(options.formData);
+      if (options.method.toLowerCase() == 'put') {
+        xhr.send(options.sourceFile);
+      } else {
+        xhr.send(options.formData);
+      }
     } else {
       console.warn('浏览器不支持 XMLHttpRequest');
     }