2.0.10 使用 cc.loader.load 加载远程png报错。

概率: 必出

平台:H5

cary
Log:

堆栈:


不是每个文件都有问题,随机报错的。 看了下堆栈 确实没有 addEventListener这个函数, 升级引擎的时候有看到移除了这个方法, 但是报错的地方是底层代码。

@cary 麻烦官方看一下

什么情况下会加载不到。。。

H5版本资源比较多, 进游戏之前直接远程下载一个缓存列表。
路径是 图集打包之后的文件名,大概有40多个文件。
图片能下载到, 就是回调事件的时候崩溃了, 提示方法不存在。

使用cc.loader.loadRes 缓存文件夹下的预制体没问题,
使用cc.loader.load 下载合图后的远程资源就会报错, 报错的基本都是1024*1024的图片,使用浏览器单独下载是没问题的。
@zzf_Cocos

这句话怎么理解呢?
我想复现的话去要在哪个平台测试?

远程res更新了吗

@siwenjie 更新了的, 文件地址在浏览器可以直接访问。
如果是下载失败, 应该会回调错误啊。
他这个是底层报错了, 事件都没回调, 下载失败我那边也是会统计进度的。
我现在把这个功能先屏蔽掉了, 如果没办法解决只能回退引擎版本了。。。 这太浪费时间了

我给你写个demo,稍等

好的,辛苦了。

单独的demo 加载 res没问题, 我明天过来在排查一下给你demo。

找到问题了, 同事在别的地方预加载了预制体…
同时下载预制体跟PNG会报错, 做个加载队列就没事了,老引擎应该是可以同时下载。
先不管这个bug了…

请避免用cc.loader.load()加载包体内的资源url,cc.loader.load(url)一般是用来加载微信头像等不在包体内的图片的,加载内部资源的url会导致资源复用的时候出错

我是使用 cc.load 来加载打包后的合图,来实现H5 预下载功能。