我可以使用另一种形式的枚举值吗?

时间:2017-03-15 06:46:55

标签: dart

我在客户端代码中有一个枚举,用于描述API中的端点列表:

枚举请求{     GetUsers,     的GetProducts,     ... }

我想向具有这些值的服务器发送请求,例如connection.sendRequest(Requests.GetUsers)

现在,在sendRequest()函数中,我希望将枚举值转换为类似'/users'的内容。

我可以为每个枚举附加类似下面的方法吗?

enum Requests {
    GetUsers.toString: '/users',
    GetPendingDomains: '/prodcuts'
}

1 个答案:

答案 0 :(得分:2)

不直接在枚举(enums are really basic in Dart)中。您必须创建一个Map<Requests, String>来处理相关路径。

enum Request { GetUsers, GetProducts, ... }
final paths = <Request, String>{
  Request.GetUsers:    '/users',
  Request.GetProducts: '/products',
}