1.4.2的正常,1.5.0以后的都会莫名其妙报这些错误。
这个BUG真的报的莫名其妙啊!我在测试工程里面全部copy都没问题。这下蛋疼了。
查出来是继承一个基类的问题,但是没发现我写的基类有啥问题
const {ccclass, property, executionOrder} = cc._decorator;
@ccclass
@executionOrder(1)
export default class BaseView extends cc.Component {
onLoad(){
}
// 关闭
close(){
let event = new cc.Event.EventCustom('clickClose', true);
this.node.dispatchEvent(event);
this.node.active = false;
this._close();
}
// 打开函数
open (data) {
this.node.active = true;
this._open(data);
};
////////////////////////下面是子类可以重写的函数//////////////////////////////
async _init () { return new Promise(function(resolve,reject){resolve()}) };// 界面第一次初始化的时候调用
async _open (data) { return new Promise(function(resolve,reject){resolve()}) }; // 每次打开界面的时候调用 可以有参数 子类重写的时候最好用 解构参数
async _close () {return new Promise(function(resolve,reject){ resolve();}) }; // 当界面关闭的时候调用
}
出错的代码是怎么写的?
表现形式就是子类绑定的控件都是undefined.上面是我写的父类。如果把子类继承cc.Component就不会有 undefined,应该是免编译出错了吧?
所有继承父类的UI控件,绑定的成员都是undefined. 但是,我在测试工程里面把父类copy过去好像又没问题?这个情况,真的不知道怎么解决了。重现不了,又不知道怎么解决。下面我做了测试,类应该没问题。
重点提一下,我所有的弹框UI都是Prefab.
代码太多了,看不出来具体是什么问题。我就想知道什么情况下会报 this.roomNumsMask is undefined?是 this 未定义?
你应该发个demo出来给大家看 帮你查查
弄不出来。我把代码移动到测试工程,是没问题的。就是目前的项目有问题。关联太多了,完全迁移很费时间。
用 QQ 发给我看看,56788395
感谢反馈,这是 TS 的父类也是 TS 时才会出现的问题,我们会尽快修复!