一时找不到这是什么原因
start() {
console.log("fly start");
this._BoxLst = this.mItemRoot.children;//(此时mFlyItemRoot是有子节点的)
}
public GeBox() {
console.log(this._BoxLst, this.mItemRoot)//(其他脚本调用时,这两个值都为空了)
}
一时找不到这是什么原因
start() {
console.log("fly start");
this._BoxLst = this.mItemRoot.children;//(此时mFlyItemRoot是有子节点的)
}
public GeBox() {
console.log(this._BoxLst, this.mItemRoot)//(其他脚本调用时,这两个值都为空了)
}
GeBox这个方法你是不是当成变量传到其他脚本了,然后调用GetBox方法的时候没有指定this对象
调用GetBox的时候是不是还没start
打印出来start已经执行了
是的 
请问要怎么才能避免这种情况呢
传的时候传getBox.bind(this)
刚刚理解错了,可能也是我举的例子不合适的缘故。
不清楚的点是:
a:脚本1调用脚本2的init()方法为脚本2进行了初始化data,再然后脚本1又调用了脚本2的另一个方法change(),change()里要用到data的数据,但此时data的数据为空,甚至脚本2的node也是null。
同样的流程,
第一次进入场景1时:脚本1调用脚本2的init()方法为脚本2进行了初始化data,再然后脚本1又调用了脚本2的另一个方法change(),change()里要用到data的数据,一切正常。退出场景1后再次进入场景1,就会发生 a
请问这是什么原因呢?