

![]()

1.定义枚举 起始值为-1(图一);
2.序列化(图二);
3.编辑器报错(图四);
4.运行结果(图三)value应该是-1,结果却是0;
5.取消图二的序列化后 value值为-1 正常;
刚开始学习,请大神帮忙看看是不是我那块书写错误,还是编辑器的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包装过一遍了,现在版本的引擎也直接可以用了