【发布时间】:2022-01-13 19:52:54
【问题描述】:
我需要在 INPUT_FIELD_DEFINITION 上创建一个自定义指令,以检查提供的枚举值是否未更改为先前的“状态”(业务逻辑是状态必须变为 UNAPPROVED -> APPROVED -> CANCELED -> FULFILLED ) 但不能完全弄清楚如何在枚举类型的构造函数中映射值。
我的所有代码都可以在github获得
我正在将 nextJs 后端功能与 neo4j 数据库一起使用,该数据库为整个架构生成解析器。
// order Schema
export const order = gql`
type Order {
id: ID! @id
state: OrderState!
user: User! @relationship(type: "MADE", direction: IN)
createdAt: DateTime! @timestamp(operations: [CREATE])
products: [Product!] @relationship(type: "INCLUDE", direction: OUT)
}
enum OrderState {
UNAPPROVED
APPROVED
CANCELLED
FULFILLED
}
`;
export const extendOrder = gql`
extend input OrderCreateInput {
state: OrderState!
}
`;
我想创建 @checkState 指令来检查更新 state 是否有效
我使用了GraphQL Tools docs 的基本示例,但它使用的是字符串值。非常感谢任何帮助。
【问题讨论】: