1. 程式人生 > >微信小程式多圖上傳

微信小程式多圖上傳

選擇圖片wx.chooseImage

這裡寫圖片描述
這裡寫圖片描述

上傳圖片wx.uploadFile

這裡寫圖片描述

這裡寫圖片描述

  1. 點選選擇圖片
chooseImg: function () {
    var that = this;
    var selectImg = that.data.selectImg;
    wx.chooseImage({
      count: 5,
      sizeType: ['original', 'compressed'],
      sourceType: ['album', 'camera'],
      success: function (res)
{
var tempFilePaths = res.tempFilePaths if (tempFilePaths.length + selectImg.length > 5) { that.tips('最多隻能上傳5張') } else { for (var i = 0; i < tempFilePaths.length; i++) { selectImg.push(tempFilePaths[i]) // that.uploadImg(tempFilePaths[i])
} that.setData({ selectImg: selectImg }) console.log(selectImg); } }, fail: function () { that.tips('選取圖片失敗') } }) },
  1. 提交表單,遍歷selectImg ,呼叫uploadImg()進行圖片一張張上傳。
  2. 上傳圖片
uploadImg: function (img,fn){
    var
that = this; var imgs = that.data.imgs; app.getLoginSession(function (session) { wx.uploadFile({ url: app.api, filePath: img, name: 'file', formData: { app: 'farm', act:'upload_file', filePath: img, t_session: session }, method: 'POST', header: { 'content-type': 'multipart/form-data' }, success: function (res) { var data = JSON.parse(res.data); var rlt = data.retval; if (data.done) { imgs.push(rlt.save_path); that.setData({ imgs:imgs }) console.log("sss"+that.data.imgs) typeof fn == 'function' && fn(); } else { console.log(data); that.tips('圖片上傳失敗') } }, fail:function(){ console.log("失敗"); } }) }) },