onLoad所在脚本挂载在场景某节点上,是隐藏状态,start所在脚本挂载在Canvas节点上
start中代码先执行了,是为什么?
onLoad所在脚本挂载在场景某节点上,是隐藏状态,start所在脚本挂载在Canvas节点上
start中代码先执行了,是为什么?
onLoad执行是在激活状态才会执行。over…
但文档是这么说的,容易引起误解:
组件脚本的初始化阶段,我们提供了 onLoad 回调函数。onLoad 回调会在这个组件所在的场景被载入的时候触发,在 onLoad 阶段,保证了你可以获取到场景中的其他节点,以及节点关联的资源数据。onLoad 总是会在任何 start 方法调用前执行,这能用于安排脚本的初始化顺序。通常我们会在 onLoad 阶段去做一些初始化相关的操作。
唉~ 中国人写的东西,文档总是不清不楚的, cocos算是比较注重文档的了.
有些东西真让人觉得是不是把文档写清楚了,祖宗八代会让人瞧不起的样子!
基本上用过Unity的人大概就知道, awake(对应到cocos creator的onLoad)
一定要在节点激活的状态下才会执行的.
不过这点我没看过unity文档里有没有写到, 很多时候是用了才知道的.
谢谢反馈,这部分文档我完善下。改成:“onLoad 回调会在组件首次激活时触发,比如所在的场景被载入,或者所在节点被激活的情况下。”
请问一下,start中若有发生错误会一直重新执行start是正常的吗?我在start中去抓取一个节点,但名称我打错了,我在编辑器的除错中看到他会一直发生,所以想请问原因,若能解答非常感谢