sonicsunsky
sonicsunsky
  • 发布:2019-04-27 15:45
  • 更新:2021-01-28 13:58
  • 阅读:5048

uni.getImageInfo uni.drawImage 绘制canvas图片报错

分类:uni-app

使用自己封装的组件绘制canvas时, uni.getImageInfo()获取阿里云oss的图片信息返回res.path本地路径并使用canvas.drawImage()绘制图片;

绘制图片过程当中会报以下错误,导致保存的canvas图片不能正常显示;

[Vue warn]: Error in nextTick: "TypeError: Cannot read property 'oss-cn-qingdao' of null"

Uncaught (in promise) TypeError: Cannot read property 'oss-cn-qingdao' of null

图片地址在浏览器中正常访问,未开启校验合法域名, 并且图片地址域名也加到download合法域名列表中;

将远程oss图片地址换成本地图片地址就不报错了,不知道是什么原因(图片比较大一般放到远端);

小程序中没有开启安全域名检查,用的也是插件市场的分享组件自己稍作修改,之前的template编译模式可以正常绘制,新的编译模式就会报这个错

尝试了许多办法实在不知道这个错误是什么原因导致的,求助

2019-04-27 15:45 负责人:无 分享
已邀请:
ZGH0709

ZGH0709

canvas 不能直接使用不同域名的图片,需要进行处理,可以通过请求加载,然后创建新的资源 URL处理。

  • sonicsunsky (作者)

    小程序中没有开启安全域名检查,用的也是插件市场的组件,之前的template编译模式可以正常绘制,新的编译模式就会报这个错

    2019-04-28 16:38

  • sonicsunsky (作者)

    可以通过请求加载,然后创建新的资源 URL处理,这句话没明白意思,能否详细说下?已经使用uni.getImageInfo转为本地图片地址,ctx.drawImage也可以绘制,保存绘制后的图片临时地址也都拿到就是报了这个错之后不往下执行了,导出的图片不能正常显示

    2019-04-28 16:41

  • ZGH0709

    回复 sonicsunsky: draImage 正常? 那是在执行什么方法报错?能否上传demo?

    2019-04-28 17:19

  • sonicsunsky (作者)

    回复 ZGH0709: 昨天升级下ide好像就不报错了,实在是不知道为什么,问题比较诡异

    2019-04-29 10:08

  • ZGH0709

    回复 sonicsunsky: ~~, 好吧!没问题就行

    2019-04-29 10:13

1***@163.com

1***@163.com

我也遇到相同的问题
请问怎么解决的

该问题目前已经被锁定, 无法添加新回复