您的当前位置:主页 > 新闻动态 > 建站技术 >

芜湖微信小程序开发之上传图片不能压缩的巨坑

时间:2018-09-22

芜湖微信小程序开发在解决项目过程中,发现微信小程序上传图片不能压缩,虽然微信的api 自带压缩wx.chooseImage,但是实际情况是不起作用,sizeType: ['original', 'compressed'] 不起作用,就算你只用compressed的话,还是不起作用。例如你手机拍一张照片是4M。小程序上传的时候,会报错,因为最大不能超过1M的上传限制,
 
小程序-本地图片转base64
readFileSync:读取本地文件,直接得到base64
wx.chooseImage success 返回选定照片的本地文件路径列表 压缩
二次压缩比较复杂的方法,下面这个文档还是不错的,主要用的微信的画图sdk,也就是wx.createCanvasContext
https://blog.csdn.net/u011830559/article/details/81058649
以上坑对应的问题
https://segmentfault.com/q/1010000012507519
 
lrz(res.tempFilePaths, {
width: 480
}).then(function (rst) {
alert(777)
//vm.imgUrls.push(rst.base64);
return rst;
}).always(function () {
 
 
})
本来在开发其他移动端项目的时候用的是lrz压缩,非常的方便,但是用mpvue 不支持lrz,微信小程序也不支持lrz压缩
用npm安装了lrz后,
import { lrz } from 'lrz'
就会提示报错,因为mpvue无法引入外部的组件
还有个思路是图片转base64并压缩大小,但是实际去解决并不容易,最终还是考虑用微信自带的Canvas功能,但是也是比较坑啊,后面会详细介绍下使用。
 
 

Copyright © 2011-2015 灵创网络 版权所有 皖ICP备13005471号-1

友情链接:芜湖装饰公司