我在小游戏写了测试断网重加载图片的功能,在调用下列代码的时候断网:
let image = wx.createImage(); image.src = url; image.crossOrigin= "Anonymous" ; |
图片会加载失败,然后我加了重试机制,恢复网络后对加载失败的图片重新用上面的代码加载一次,在开发者工具上图片是加载成功且正常显示,但是在真机测试的时候发现恢复网络图片仍然加载失败,显示了下面的错误:
然后我试着给重加载的图片的url加了个随机字符串参数:
``` let image = wx.createImage(); if (!src.includes( 'data:image' )) { if (src.includes( '?' )) { url += '&t=' + Math.random(); } else { url += '?t=' + Math.random(); } }
``` |
然后在真机就重加载成功了,请问这个是什么问题呢?是不是和缓存有关?
下图这样写会报错:
下图这样写就不会报错了:
名称前面不能写绝对或相对路径的符号
但我是用得远程路径,https://开头的
请按照指引(https://developers.weixin.qq.com/miniprogram/dev/devtools/minicode.html),提供能复现问题的代码片端,我们以便定位问题。
因为IE的缓存,使得我们在填入相同的值的时候总是使用IE缓存,所以使用URL+随机数的作用就是避免游览器缓冲JS
那这个问题什么时候能修复,按理说一开始加载失败的图片不应该有缓存的,后面用相同的url重新加载也不应该失败。。。。
那这个问题什么时候能修复,按理说一开始加载失败的图片不应该有缓存的,后面用相同的url重新加载也不应该失败。。。。