-
Creator 版本:2.3.4
-
目标平台: WEB
test(){
this.LoadJson(“data/fishPool”, this.mFishPoolData);
this.scheduleOnce(()=>{
cc.log(“延迟2秒后”);
cc.log(this.mFishPoolData);
}, 2);
}//!!!有问题,必定返回false,因为loadRes需要时间才能执行完毕,后面先返回了
public LoadJson(dataPath:string, js:cc.JsonAsset) {
let res:boolean = false;
cc.loader.loadRes(dataPath, cc.JsonAsset, (err, jsLoad)=>{
if(err) {
console.log(err, jsLoad);
res = false;
}
else {
cc.log("Json --> ");
cc.log(jsLoad);
js = jsLoad;
res = true;
}
})
}
cc.loader是异步的,所以在调用候等待了2秒,打印this.mFishPoolData还是null,路径确认没有问题,断点打在回调函数中,查看读取也是正常的,就是赋值传递给this.mFishPoolData的时候有问题.
请教各位这个应该怎么改,我打算多次调用LoadJson()方法,给不同的JSON变量传值过去.
