0

我陷入了graphql-relay的问题。

export const NftUserType = new GraphQLObjectType<UserNft, Context>({
  name: "nftUser",
  description: "The registered nft user account.",
  interfaces: [nodeInterface],

  fields: {
    id: {
      type: new GraphQLNonNull(GraphQLUUID)
    },
})

这是我的 NftUser 类型

export const { nodeInterface, nodeField, nodesField } = nodeDefinitions(
  (globalId, ctx: Context) => {
    const { type, id } = fromGlobalId(globalId);
    switch (type) {
      case "nftUser":
        return ctx.userById.load(id);
      case "Instructor":
        return ctx.instructorById.load(id);
      case "Class":
        return ctx.classById.load(id);
      case "Team":
        return ctx.teamById.load(id);
      case "Session":
        return ctx.sessionById.load(id);
      default:
        return null;
    }
  },
)

这是我的节点文件,当我为 graphql 运行后端 api 时,它给了我以下错误。

** GraphQLError:接口字段 Node.id 需要类型 ID!但 nftUser.id 是 UUID 类型!。** 因为我定义了 id -> UUID 的类型。我不知道如何将“ID”类型更改为“UUID”。有没有办法更改类型?

4

0 回答 0