# Enum type
Il existe dans GraphQL des types enum
, cependant ceux-ci ne supportent pas les décorateurs avec TypeScript. Cela implique qu'il faille utiliser une façon alternative de les déclarer pour graphql-composer
.
# Le créateur d'EnumType
Grâce à la class EnumType
fournie par graphql-composer
vous pouvez créer un type GraphQL enum
en passant votre enum
TypeScript en paramètre.
# Déclaration du type
En premier paramètre vous devez donner le nom du type GraphQL et en deuxième l'enum.
import { EnumType } from "graphql-composer";
enum Animal {
CAT = 1,
COW = 2,
}
const animalEnum = EnumType.create("AnimalEnum", Animal)
# Utilisation du type
Pour typer vos champs de class TypeScript vous utiliserez donc Animal
et pour type les champs GraphQL ça sera la variable animalEnum
qui sera utilisée.
@ObjectType()
class User {
@Field(type => animalEnum)
pet: Animal
}
← Union type L'héritage →