微信小程序 ES6Promise.all批量上传文件实现代码

仅有尝试过,努力过,坚持过,才能有收获。一分耕耘,一分收获,仅有努力了,才能绽放出成功的花朵。只要功夫深,铁杵磨成针。我相信,只要我朝着这个梦想努力奋斗,坚持不懈,那么,我就必须会成功!

微信小程序 ES6Promise.all批量上传文件实现代码

客户端

Page({
  onLoad: function() {
    wx.chooseImage({
      count: 9,
      success: function({ tempFilePaths }) {
        var promise = Promise.all(tempFilePaths.map((tempFilePath, index) => {
          return new Promise(function(resolve, reject) {
            wx.uploadFile({
              url: 'https://www.mengmeitong.com/upload',
              filePath: tempFilePath,
              name: 'photo',
              formData: {
                filename: 'foo-' + index,
                index: index
              },
              success: function(res) {
                resolve(res.data);
              },
              fail: function(err) {
                reject(new Error('failed to upload file'));
              }
            });
          });
        }));
        promise.then(function(results) {
          console.log(results);
        }).catch(function(err) {
          console.log(err);
        });
      }
    });
  }
});

服务端

<?php
use IlluminateHttpRequest;
Route::post('/upload', function (Request $request) {
  if ($request->photo->isValid()) {
    $request->photo->storeAs('images/foo/bar/baz', $request->filename . '.' . $request->photo->extension());
    return ['success' => true, 'index' => $request->index];
  }
});

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

本文微信小程序 ES6Promise.all批量上传文件实现代码到此结束。人格的完善是本,财富的确立是末。小编再次感谢大家对我们的支持!

您可能有感兴趣的文章
微信小程序如何访问公众号文章

微信小程序实现类似微信点击语音播放效果

微信小程序wx.request拦截器使用详解

微信小程序在ios下Echarts图表不能滑动的问题解决

小程序中canvas的drawImage方法参数使用详解