1. web项目vue框架使用qrcodejs2生成二维码,会生成canvas和img,但是发现在手机上都是使用canvas而img中不会有数据
2. 本意是使用a标签的download进行点击下载,但是经尝试使用uc浏览器和via都不行,只有chrome通过,兼容性不行
3. 浏览器自带长按保存图片,但是支付宝内置浏览器不支持长按保存base64格式的图片
支付宝官方已解释,支付宝安卓客户端目前只支持 http 格式的图片这样长按保存操作, 不支持其它格式的图片,如 base64 图片格式。目前苹果 ios 暂无此问题。
官方解释地址:https://openclub.alipay.com/club/history/read/9024
4. 最后通过将qrcodejs2生成二维码通过canvas转base64转file上传到阿里云oss获得图片url地址,隐藏canvas,赋值img的src并显示,解决支付宝内置浏览器长按保存