creator 2.4.4 this._components[t]._destroyImmediate(); 报没有_destroyImmediate这个方法
生成微信版,在微信开发者工具报错。
我看插件版本号是"version": “2.4.5”
如果不想退编辑器版本 使用通用插件的话是不是game.json里面改2.4.3就OK了。
然后本地插件版的就修改代码
creator 2.4.4 this._components[t]._destroyImmediate(); 报没有_destroyImmediate这个方法
生成微信版,在微信开发者工具报错。
我看插件版本号是"version": “2.4.5”
如果不想退编辑器版本 使用通用插件的话是不是game.json里面改2.4.3就OK了。
然后本地插件版的就修改代码
不用微信插件,会报错么
那跟微信没关系,你这个看起来是对象被释放了两次,怎么触发的
这个还没查,升级版本前还好好,升级后发生的,我去查查
或者方便给个demo么
找到问题了,我在初始场景中有一段代码
if (this && this.node && this.node.isValid) this.node.destroy();
销毁了某个节点,把这段注释了就好了。。
我新建了个项目测试了下也没问题。可能是代码逻辑哪有问题把,理下去。
就只有一个地方destroy一个节点 他就出这个问题了,但是其他地方都是好的。奇奇怪怪的。
removeFromParent 后再释放?可能是这里释放了一次,切换场景的时候引擎会自动释放一次,所以变成两次释放了
removeFromParent 也会有这个错误。
那个时候没有切换场景,只是简单的destroy了某个节点。 我在测试项目有destroy的地方,发现还有其他地方也会这样。
那可以打印一下调用栈,看看什么地方调用的
我log了destroy的那个方法只有一处调用他,他所在的父节点也一直都存在,但是他就是报错。creator运行没报错,只有微信/QQ开发者工具和真机会报错
我准备退回2.4.3了,切个场景也会有这个问题,不知道是不是和使用了小游戏分包有关系,新建的空项目都没啥问题。
那可能是在调用前就不对了,你可以看下调用前的 ObjFlag 是什么
能给个 demo 么

这样写就不报错了
2.4.4解决了个模型显示的bug 还不得不用
我是改了引擎,在CCNode这个类_onPreDestroy方法里修改成这样:
try {
var destroyByParent = this._onPreDestroyBase();
} catch(err) {
return;
}
我的问题是进入不了场景,同样是微信端报错,网页调试版没有问题,改完之后就能进入场景,但是还是会报错