Skip to content

【bug】Taro H5 上传失败 #1096

Closed
Closed
@biaomingzhong

Description

@biaomingzhong

Hi! 👋

Firstly, thanks for your work on this project! 🙂

Today I used patch-package to patch @nutui/[email protected] for the project I'm working on.

Here is the diff that solved my problem:

diff --git a/node_modules/@nutui/nutui-taro/dist/packages/_es/Uploader.js b/node_modules/@nutui/nutui-taro/dist/packages/_es/Uploader.js
index ea0641f..ad9f2aa 100644
--- a/node_modules/@nutui/nutui-taro/dist/packages/_es/Uploader.js
+++ b/node_modules/@nutui/nutui-taro/dist/packages/_es/Uploader.js
@@ -23,9 +23,9 @@ var __publicField = (obj, key, value) => {
 * (c) 2021 @jdf2e.
 * Released under the MIT License.
 */
-import { reactive, computed, resolveComponent, openBlock, createElementBlock, normalizeClass, renderSlot, createBlock, createCommentVNode, Fragment, renderList, createElementVNode, toDisplayString, createVNode, createTextVNode } from "vue";
-import { c as createComponent } from "./component.js";
 import Taro from "@tarojs/taro";
+import { computed, createBlock, createCommentVNode, createElementBlock, createElementVNode, createTextVNode, createVNode, Fragment, normalizeClass, openBlock, reactive, renderList, renderSlot, resolveComponent, toDisplayString } from "vue";
+import { c as createComponent } from "./component.js";
 import { _ as _export_sfc } from "./plugin-vue_export-helper.js";
 class UploadOptions {
   constructor() {
@@ -86,9 +86,7 @@ class Uploader {
     const uploadTask = uploadFile({
       url: options.url,
       filePath: options.taroFilePath,
-      header: __spreadValues({
-        "Content-Type": "multipart/form-data"
-      }, options.headers),
+      header: options.headers,
       formData: options.formData,
       name: options.name,
       success(response) {
@@ -264,7 +262,7 @@ const _sfc_main = create({
         res.forEach((i) => i.uploadTaro(Taro.uploadFile));
       });
     };
-    const readFile = (files) => {
+    const readFile = (files, tempFilePaths) => {
       const imgReg = /\.(png|jpeg|jpg|webp|gif)$/i;
       files.forEach((file, index) => {
         let fileType = file.type;
@@ -272,7 +270,7 @@ const _sfc_main = create({
         if (!fileType && imgReg.test(file.path)) {
           fileType = "image";
         }
-        fileItem.path = file.path;
+        fileItem.path = tempFilePaths[index].path || file.path;
         fileItem.name = file.path;
         fileItem.status = "ready";
         fileItem.message = "\u7B49\u5F85\u4E0A\u4F20";
@@ -323,11 +321,11 @@ const _sfc_main = create({
       if (props.beforeUpload) {
         props.beforeUpload(tempFiles).then((f) => {
           const _files = filterFiles(f);
-          readFile(_files);
+          readFile(_files, tempFilePaths);
         });
       } else {
         const _files = filterFiles(tempFiles);
-        readFile(_files);
+        readFile(_files, tempFilePaths);
       }
       emit("change", {
         fileList

This issue body was partially generated by patch-package.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions