安卓微信下bitmap.clone后经常加载不到
xty1992a opened this issue · comments
xty1992a commented
如题
看了源码,因为clone时new了一个新的bitmap,同时用当前bitmap的img的链接传入,却没有传递onLoad
换句话说就是clone实际实现是异步的,当外部预设它是同步运行时,如果这个新的bitmap加载图片不够快,就会导致图片丢失。
苹果设备可能图片缓存策略做得好,基本没有出现,部分安卓就非常容易出现
class BitMap{
constructor (img, onLoad) {
}
clone () {
// 复制完img宽度0??所以直接传字符串 (<--源码注释)
const bitmap = new Bitmap(typeof this.img === 'string' ? this.img : this.img.src)
// 其他赋值操作...
return bitmap
}
}