最近被人安利TS的各种好,简直就是IDE重度依赖症患者的福音,于是着手开始项目的升级改造,这里要着重感谢 @toddlxt 大大的无私奉献,再次感谢!
OK,言归正传。
这次改造过程中,我发现只要打开Prefab,控制台中就会报 getComponent: Type must be non-nil 的红色错误
由于错误堆栈中没有指明具体是哪个类出现问题,所以只能一个一个组件试,还好上面的组件不多,很快就找到了原因,某个组件的property装饰器中少掉了type设置:
@property({
default : null,
//type : cc.Sprite, //就是这里,没有的话就会报错
tooltip: ‘用来显示的App icon’,
displayName: ‘icon’
})
icon : cc.Sprite;
添加之后,再打开Prefab,编辑器控制台就不会提示红色的错误信息了。所以,建议在改造TS的过程中,如果之前的properties中定义了default、type等各种属性值的话,可以直接拷贝到新的property装饰器中。
ps:这个错误仅在打开Prefab时才会出现,但是并不影响整个项目的运行,所以,如果你有一个强大的心脏,可以无视各种红色信息,那也可以不用管

