Neo-One 智能合约中有枚举吗?

Are there Enums in Neo-One Smart Contracts?

是否可以在 neo-one 智能合约中使用枚举? 我试图声明一个枚举,但出现以下错误:

error

我是这样声明的:

enum testEnum{
  a,
  b,
  c,
}

export class Token extends SmartContract {
  private t: testEnum = testEnum.a;
}

好像不是所有的typescript类型都支持,或者我声明错了

NEO•ONE TypeScript 智能合约编译器实际上目前不支持枚举,这就是您收到该错误的原因。当编译器遇到枚举声明(通过 enum 关键字)时,它只会报告不受支持的语法错误。所以我建议只使用普通的 JS“对象”来完成同样的事情。像这样:

const testEnum = {
   a: 'a',
   b: 'b',
   c: 'c',
};