我出于学习目的编写了简单的GraphQL模式和解析器,但无法获得我的代码按预期工作的原因。我将Prisma用于ORM,并使用express-graphql
和graphql-import
组成了API。
type User {
id: ID!
name: String!
}
type Link {
id: ID!
url: String!
user: User!
}
type Query {
links(id: ID!): [Link!]!
}
// resolvers
const links = async (root, args, ctx) => {
const links = await ctx.prisma.links({
where: {
user {
id: args.id
}
}
}
}
// resolver for `Link` type
const user = async (root, args, ctx) => {
const user = await ctx.prisma.link({ id: parent.id }).user()
return user
}
// omitted field resolver for `url` and `id`
module.exports = {
user
}
使用这些代码,我希望在查询id
时得到url
,user
,links
字段,但是当我发送查询时,它将返回{{1 }}和null
字段。这意味着,如果我在服务器端签入,则user
字段的解析程序根本不会被调用。怎么了?