找到bug了,是这个函数有问题...
函数返回和实际不一致使用的是微信的引擎,遇到一个很抽象的问题 出现问题的代码位于内部UI kit下载ui资源时同时下载的Utils.ts的 getChildByName函数 我在内部新加上了一行: public static getChildByName( entity: engine.Entity, name: string ): engine.Entity { const childrenCount = entity.transform2D.childrenCount; const childList = entity.transform2D.children; for (let i = 0; i < childrenCount; i++) { let child = childList[i].entity; if (child.name === name) { console.log(child); // 我插入的行,打印一下返回的entity return child; } } let result = null; for (let i = 0; i < childrenCount; i++) { let child = childList[i].entity; result = this.getChildByName(child, name); } return 然后这是外部调用的代码 console.log(Utils.getChildByName(this.entity, "ReturnText")); 这是运行的结果: [图片] 可以看到再内部的child确实不是空的,确实找到了name为"ReturnText"的entity.但是再返回给外面的时候就变成null了,有没有大佬看看咋回事
2023-10-10