微信小程序canvas绘制的图片真机不显示

问题描述

公司小程序项目有个页面需要用 canvas 绘制图片保存,其中图片资源是从后端获取的网络图片。然而在测试中发现,模拟器上图片能正常绘制,但真机只有开了调试模式才能显示图片,一旦关闭调试模式后,canvas 就空白一片,啥都看不见。

踩坑

一开始简单 google 下,都说是因为图片得下载到本地,获取临时路径后才能绘制。然而我就是这么做的,所以此路不通。最后阅读 这篇文章 后才明白问题出在哪儿。

解决方案

首先检查你的网络图片地址的域名在不在微信白名单内,这个可以在「微信公众平台-小程序」中配置,此处不表。重点是在绘制 canvas 时,得先下载这张网络图片到本地,所以还得在「微信公众平台-小程序」中的「服务器配置-downloadFile」合法域名中配置你网络图片的域名:

完…