在properties中声明了一个节点数组,但是无法得到组件

<img src="/uploads/default/original/3X/8/2/82f4e4367518e464db450195d728b4d0985cafc3.png" width=“566”

height=“252”>

我大概了解这样的原因是因为这个extra[i]为空,但是我确实已经给过对象了,后面还有5个没有截进来,不知道应该怎么修改了

type:[cc.Node] => type:cc.Node

官方文档的数组声明是这样写的。。问题应该不在这里吧。。还有就是我如果写n遍,分别是extra[0].getComponent,extra[1].getComponent,extra[2].getComponent.。。。等这样就可以实现,但是现在变量就实现不了了

也照你说的改过尝试了,还是不行

你selfs在哪定义的?selfs都是undefined,当然取不到节点了。

不是self的问题,我前面有提到,一模一样的写法,如果是extra[0]一直到extra[4]都是ok的,但如果是extra[a]就都不行,而且在循环中会报5次无组件

你for循环是10,你东西就5个,报5次无组件

不是。。我这个后面改了,因为我只生成了五个,循环后来就改成五次了,截图截的是昨天orz

节点声明成 type: cc.Sprite 代码取这个节点或者节点的子节点.spriteFrame = 路径就可以了 麻烦吗?几句话

self.extra[a].spriteFrame=new cc.SpriteFrame(urlcache[a]);
之前是这么写的,但是图片依然没有加载上,不显示,声明成sprite使用setposition会提示这个方法不存在,所以后来改成node了。而且为什么使用load会出现这种问题呢

我再修改了一下现在可以了,但是我还是想问一下为什么load会出现那种问题呢
还有就是声明成node的时候self.extra[a].getComponent(cc.Sprite).spriteFrame=new cc.SpriteFrame(urlcache[a]);这样为什么不行呢