小程序 图片上传方法

Posted Faded露露

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小程序 图片上传方法相关的知识,希望对你有一定的参考价值。

uploadimg: function () {//这里触发图片上传的方法
let that = this;
var pics = that.data.pics;
app.uploadimg({
url: app.baseUrl + ‘api/PublishMessage/uploadImage‘,//这里是你图片上传的接口
path: pics,//这里是选取的图片的地址数组
resourceType: that.data.resourceType,
resourceId: that.data.resourceId
});
setTimeout(function () {
// console.log(app.globalData.complete)
if (app.globalData.complete==true){
that.setData({
loadingBox: false
})
wx.switchTab({
url: ‘../partner/partner‘
})
}else{

}
 
},3000)
}
//多张图片上传
  
  uploadimg(data) {
    let that = this,
    i = data.i ? data.i : 0,//当前上传的哪张图片
    success = data.success ? data.success : 0,//上传成功的个数
    fail = data.fail ? data.fail : 0;//上传失败的个数
    wx.getStorage({
      key: "userid",
      success: function (res) {
        console.log(res.data)
        wx.uploadFile({
          url: data.url,
          filePath: data.path[i],
          name: ‘file‘,//这里根据自己的实际情况改
          formData: {
            resourceType: data.resourceType,//  资源类型: 图片: img   视频 : video
            articleType:‘youji‘,//   文章类型: 约伴 : yueban  游记 : youji
            resourceId: data.resourceId,//资源id: 如果发布的是约伴, 那就是发布的当前约伴信息的 信息id, 用这个 信息id 来标识是那片文章的资源
            userId: res.data,// 用户id
          },
          success: (resp) => {
            success++;//图片上传成功,图片上传成功的变量+1
            console.log(resp)
            console.log(i);
            //这里可能有BUG,失败也会执行这里,所以这里应该是后台返回过来的状态码为成功时,这里的success才+1
          },
          fail: (res) => {
            fail++;//图片上传失败,图片上传失败的变量+1
            console.log(‘fail:‘ + i + "fail:" + fail);
          },
          complete: () => {
            console.log(i);
            i++;//这个图片执行完上传后,开始上传下一张
            if (i == data.path.length) {   //当图片传完时,停止调用          
              // console.log(‘执行完毕‘);
              // console.log(‘成功:‘ + success + " 失败:" + fail);
              that.globalData.complete=true
              
            } else {//若图片还没有传完,则继续调用函数
              console.log(i);
              data.i = i;
              data.success = success;
              data.fail = fail;
              that.uploadimg(data);
            }
            
          }
        });
      }
    })
  },

 

以上是关于小程序 图片上传方法的主要内容,如果未能解决你的问题,请参考以下文章

小程序各种功能代码片段整理---持续更新

小程序图片上传

小程序包大小超过2M的解决方法

5行代码实现微信小程序图片上传与腾讯免费5G存储空间的使用

小程序 图片上传方法

微信小程序上传图片到COS腾讯云