如何在Appsync枚举中使用特殊字符(-)?

时间:2019-06-24 09:39:13

标签: graphql aws-appsync

我想使用appsync Type枚举表示语言环境信息。但是,有一些特殊的内部语言环境信息。例如-en-US中的en-UK

如果可能,我想保留语言环境字符串的格式。

1 个答案:

答案 0 :(得分:2)

GraphQL规范does not allow -的名称。因此,答案很简单,那就是不可能。

您可以做的是创建一个包装枚举和语言环境字符串的对象类型:

enum LocaleIdentifier {
  EN_US
  EN_UK
  # ...
}

type Locale {
  id: LocaleIdentifier
  str: String
}

这将使您每次获得语言环境时都可以在前端使用该字符串,但使用枚举类型引用该语言环境。我不确定其中是否有很多价值,而不是直接使用字符串。