diff --git a/src/core/helpers/protocol/network/upload-file.js b/src/core/helpers/protocol/network/upload-file.js index 47cdd37659ffd0869082c2850837aa94e9471449..bcf582eb7d3c47917f5cd9023ad0b0b10ebc2e36 100644 --- a/src/core/helpers/protocol/network/upload-file.js +++ b/src/core/helpers/protocol/network/upload-file.js @@ -9,6 +9,9 @@ export const uploadFile = { files: { type: Array }, + file: { + type: File + }, filePath: { type: String, validator (value, params) { diff --git a/src/platforms/h5/service/api/network/upload-file.js b/src/platforms/h5/service/api/network/upload-file.js index 9e3b29e264f4d29c54e82908dfbfc2c56838dd93..15b97051a63978bfa30419487d2414733b0874ae 100644 --- a/src/platforms/h5/service/api/network/upload-file.js +++ b/src/platforms/h5/service/api/network/upload-file.js @@ -45,6 +45,7 @@ class UploadTask { */ export function uploadFile ({ url, + file, filePath, name, files, @@ -59,6 +60,7 @@ export function uploadFile ({ if (!Array.isArray(files) || !files.length) { files = [{ name, + file, uri: filePath }] } @@ -128,7 +130,7 @@ export function uploadFile ({ } Promise - .all(files.map(({ name, uri }) => urlToFile(uri))) + .all(files.map(({ file, uri }) => file instanceof File ? Promise.resolve(file) : urlToFile(uri))) .then(upload) .catch(() => { setTimeout(() => {