微信小游戏报错 cocos2d-js-min.js:1 Uncaught TypeError: Cannot read property 'length' of null

cocos2d-js-min.js:1 Uncaught TypeError: Cannot read property ‘length’ of null

出错地方为代码的这一段:o=t._children,l=0,h=o.length;l<h;l++){var u=o[l];if(u._renderFlag|=a,u._activeInHierarchy&&0!==u._opacity)

o.length 是null

是min.js的问题还是我的代码问题?

children格式应该是[ ],就算没有,length也该是0

为什么会报这个错误??

  • Creator 版本: 2.4.2

  • 目标平台: 微信小游戏

  • 重现方式:

  • 首个报错:

  • 之前哪个版本是正常的:

  • 手机型号:

  • 手机浏览器:

  • 编辑器操作系统:

  • 重现概率:

这个报错的意思是你的o是个null值吧

最近使用 2.4.3构建出来的Apk版本同样出现问题。
出现的位置为 cc.find('xx/xx/xx/', target) getChildCyName,使用上面两个函数会出现 Cannot read property ‘length’ of null的错误。由于这个错误偶先,便没有继续跟进(target这个字段确定有值)

曲线救国方案:
使用 cc.find('xx/xx/xx'),没有赋值第二个字段,问题就再也没有出现过

1赞

of 不是 is, 这句话直译就是不能读取null对象的属性’length’,你在读 o.length,所以 o 是空,target 有值不代表 target 是正确的,既然给你报这个错了target._children就是 null,你只要证明一下这个 target 对不对就行了

谢谢各位,确实是对象是空,他的length就更不存在了。

经过修改,cocos可以正常运行了,但是在小游戏端,还是出现这个报错,请问是不是cocos和小游戏不一样?
小游戏的callback是不是要把对象放在全局对象里面?才能找到?