4364关注13197浏览
需求: 生成分享图片
业务逻辑: 点击分享按钮, 将生成一张分享图片,
技术实现: 通过 canvas 把页面绘制出来,wx.cancasToTempFilePath 将图片导出得到生成图路径,wx.getImageInfo 根据路径下载图,wx.previewImage 预览图片。
遇到问题:
在 canvas 绘制图片前,需要把图片下载下来(getImageInfo ),多张图片就用到了 Promise.all() (见下图)。
小程序开发工具实现没有问题,小程序真机测试就出现问题,一直在生成中,排查代码后发现 promise.all().then() 就进不去 then()方法。
同时发现一个有趣的规律:
如果小程序真机测试打开 vconsole 调试,就没得问题。
小程序真机扫开发工具=》远程调试 生成的二维码也没有问题
只有小程序真机扫描 开发工具 》 预览 生成的二维码就有问题!
很是奇怪 !不解其中的奥妙!
有木有人遇到这样的问题? 欢迎一起讨论 或给予指点
小程序有没有技术支持呢? 在哪里可以找到?
-
至过去的我
2044人对此回答表示赞同
我是未来的你,你现在是不是在年找寻小程序答案。你不要感觉诧异,给你来信原因,就是让你不在后悔。今天去学习如何推广小程序,相信......点击查看更多> -
酥油茶
17人对此回答表示赞同
很神奇,我也是使用Promise.all批量下载图片,但是至今未有then无法进入的情况,是否接口域名未配置好,或者图片不是https的?我使用的不是getimageinfo,而是downloadfile。后面是怎么解决的呢?希望了解一下方便踩坑
展开170回复分享发布于 6年前评论(0)
收起评论
-
James
16人对此回答表示赞同
初步判断是不同js引擎的promise实现差异导致。请问你出现问题的小程序真机机型是什么呢?
展开160回复分享发布于 6年前评论(0)
收起评论
-
黎明星晨
11人对此回答表示赞同
对了,我们遇到的情况是:只有当用户第一次进入小程序会出现这样的问题。当用户把小程序删除后,再次进入就好了,以后就一直是正常的了。
展开110回复分享发布于 6年前评论(0)
收起评论
-
Sarah
9人对此回答表示赞同
我们也遇到了跟描述一模一样的问题,想问一下,你们最后解决了么?
展开90回复分享发布于 6年前评论(0)
收起评论
-
余生
1人对此回答表示赞同
@LastLeaf安卓基本上全军覆没,最后改变了实现的机制。
展开10回复分享发布于 6年前评论(0)
收起评论