cocos creator3D 编辑器 枚举 BUG


1.定义枚举 起始值为-1(图一);
2.序列化(图二);
3.编辑器报错(图四);
4.运行结果(图三)value应该是-1,结果却是0;
5.取消图二的序列化后 value值为-1 正常;

刚开始学习,请大神帮忙看看是不是我那块书写错误,还是编辑器的bug. 谢谢!!!

试试我这样写:

我的是creator 3D1.2 你把Enum A的值改为-1 从负数开始 一样报错, 错问题。

看起来-1是有问题,我们查一下,感谢反馈~

客气了!辛苦了

TS的enum和cc.Enum生成逻辑都是不一样的,之前官方的反馈就是不支持-1这样使用的。
不过也可以野路子来搞,直接TS里面这样声明

export enum ObjectType{
__enums__ = null,
Null_Type = -1,
Null_Not_Type = 0,
Srone_Type,
Ship1_Type,
Ship2_Type,
Ship3_Type,
}

.

@property({type: ObjectType})
value:ObjectType = ObjectType.Null_Type;

这样就类似相当于ccEnum包装过一遍了,现在版本的引擎也直接可以用了