微信小程序实现图片上传

图片上传是常见功能,在微信小程序中怎么实现呢?

介绍两个api

wx.chooseImage - 选择图片

从本地相机中选择图片 - wx.chooseImage(Object object) | 微信开放文档

上传 - UploadTask | 微信开放文档

单张图片上传

wx.chooseImage({
  count: 1,
  sizeType: ['original', 'compressed'],
  sourceType: ['album', 'camera'],
  success (res) {
    // tempFilePath可以作为img标签的src属性显示图片
    const tempFilePaths = res.tempFilePaths
    wx.uploadFile({
		url: 'common/common/uploadFile',
	    name: 'file',
		filePath: res.tempFilePaths,
		header: {
				'Authorization': `bearer ${token}`
		},
		formData: {
				file: res.tempFilePaths[0],
		},
		success: (res) => {})
  }
})


 

多张图片上传

对于多张的图片上传,可以选择多张之后,调用upload每一张上传,也就是循环upload.

第二种是转换为base64,多张一次性调用接口上传

this.data = > 所有的base64集合,showData可以直接在img标签中显示图片

             wx.chooseImage({
					count: 1,
					success: (res) => {
						)
						 wx.getFileSystemManager().readFile({
							 filePath: res.tempFilePaths[0],
							 encoding: "base64",
							 success: (result) => {
								this.showData = 'data:image/png;base64,' + result.data;
								this.data =this.data.push(result.data);
							 }
						 })
					}
				})

上传,正常调用后端接口,传入this.data

       wx.request({
			url: '/uplod',
			method: 'POST',
			data: {imgs: this.data},
			headerList: {
				'content-type': 'application/x-www-form-urlencoded'
			},
            success (res) => {}
		})

 


 

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值