在微信小程序的canvas中绘制了一张png图,在实机测试时发现只有开了调试才能显示图片

在微信小程序的canvas中绘制了png图,在实机测试时发现只有开了调试才能显示图片(下图中的两个按钮),关闭调试模式后,canvas就空白透明了...

clipboard.png

其中一行图片URL是:
https://heyi.189go.cn/o/gd/sm...

图片都是先用wx.downloadFile拿到tempFilePath,然后把tempFilePath作为第一个参数传入 ctx.drawImage第一个参数来绘制的。

请问问题会是出在哪里...?


我把每个步骤的log打印到页面上了,知道原因了,但是解决办法没有用,请问是哪里出了问题?

原因截图:

clipboard.png

原因是图片加载时,域名不在微信白名单内(url not in doman list)

但是我去设置白名单:

clipboard.png

之后还是报上面相同错误


然后看到这篇文章,说为了测试自己的 https 服务符不符合要求,用 wx.request发一个请求,返回的报错会比较详细,我就用wx.request随便访问了一个我的https 服务

然后我在pc环境都看到报错了:
如若已经在管理后台更新域名配置,请刷新项目配置后重新编译项目,操作路径:“项目-配置信息-刷新”

原来坑爹的小程序在wx.downloadFilewx.request遇到相同错误,但是报错信息却是不一样!在小程序后台改完配置后,还要在下图这里点“刷新”...

clipboard.png

至此,问题解决,canvas中的图片也可以加载了。

阅读 12.6k
4 个回答

额,解决方案找到了,在问题中我已经作答了。这个不算坑,但是对于刚开始接触小程序的人来说,解决起来也着实麻烦...

新手上路,请多包涵

麻烦问一下,您在canvas中加载img的代码可以发一下么。我这边也不显示img我想看看您那边写的

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题