[]【BUG】加载的url中有错误url时,laya偶现加载complete不回调
Bug代码如下,当第一个url是错误的,并且是lh类型时,会导致complete回调不走。具体见附件的demo。原因是onerror时没有重置customParse属性为false。
var res3DArr = [
{ url: this.error_PATH },
{ url: this.zombie_anim_path1 },
{ url: this.zombie_anim_path2 },
{ url: this.zombie_anim_path3 },
{ url: this.zombie_anim_path4 },
{ url: this.zombie_anim_path5 },
];
Laya.loader.retryNum = 0;
Laya.loader.create(res3DArr, Laya.Handler.create(this, this.onRes3DLoaded), null);
结论:onLoad时checkNext触发endLoad,会重置customParse属性,onError的时候没有触发这个逻辑,导致复用这个loader时,customParse属性不正确。
修改:成功、失败都会走到onLoaded中,此处会把loader添加到池中,在此处重置loader._customParse为false即可。
var res3DArr = [
{ url: this.error_PATH },
{ url: this.zombie_anim_path1 },
{ url: this.zombie_anim_path2 },
{ url: this.zombie_anim_path3 },
{ url: this.zombie_anim_path4 },
{ url: this.zombie_anim_path5 },
];
Laya.loader.retryNum = 0;
Laya.loader.create(res3DArr, Laya.Handler.create(this, this.onRes3DLoaded), null);
结论:onLoad时checkNext触发endLoad,会重置customParse属性,onError的时候没有触发这个逻辑,导致复用这个loader时,customParse属性不正确。
修改:成功、失败都会走到onLoaded中,此处会把loader添加到池中,在此处重置loader._customParse为false即可。
没有找到相关结果
已邀请:
要回复问题请先登录
1 个回复
qian
赞同来自: