Javascript 使用Prisma生成的代码时发生变量错误
我使用的是Prisma生成的createUser,它需要预期UserCreateInput的数据 然而,我有一个错误 错误 错误:变量“$data”应为“UserCreateInput!”类型的值但是得到:{“数据”:{“姓名”:“布莱恩”,“电子邮件”:bryan@email.com“,”密码“$2a$10$U33Z8MKK1HPGR96R6DORNUXI6VABSARUWFOGH4VYQ0VMMSTGZNHG”}。原因:“电子邮件”应为非null值,发现为null。(第1行第11列): 突变($data:UserCreateInput!){ schema.graphqlJavascript 使用Prisma生成的代码时发生变量错误,javascript,graphql,prisma,Javascript,Graphql,Prisma,我使用的是Prisma生成的createUser,它需要预期UserCreateInput的数据 然而,我有一个错误 错误 错误:变量“$data”应为“UserCreateInput!”类型的值但是得到:{“数据”:{“姓名”:“布莱恩”,“电子邮件”:bryan@email.com“,”密码“$2a$10$U33Z8MKK1HPGR96R6DORNUXI6VABSARUWFOGH4VYQ0VMMSTGZNHG”}。原因:“电子邮件”应为非null值,发现为null。(第1行第11列): 突变
type Query {
users: [User!]!
}
type Mutation {
signup(email: String!, password: String!, name: String!): User!
type User {
id: ID!
email: String!
name: String!
clients: [Client]
products: [Product]
}
突变
const bcrypt = require('bcryptjs')
const jwt = require('jsonwebtoken')
const Mutation = {
async signup(root, args, context) {
const email = args.email.toLowerCase()
const password = await bcrypt.hash(args.password, 10)
const user = await context.prisma.createUser({
data: {
name: args.name,
email,
password
}
})
const token = jwt.sign({ userId: user.id }, process.env.APP_SECRET)
context.response.cookie('token', token, {
httpOnly: true,
maxAge: 1000 * 60 * 60 * 24 * 356
})
return user
}
}
module.exports = Mutation
用户的datamodel.prisma
type User {
id: ID! @id
email: String! @unique
name: String!
password: String!
clients: [Client] @relation(link:INLINE)
products: [Product] @relation(link:INLINE)
transactions: [Transaction] @relation(link:INLINE)
}
无需在传递给
createUser
的对象中包含data
属性——只需将参数作为映射传递:
const user = await context.prisma.createUser({
name: args.name,
email,
password,
})
有关更多详细信息和示例,请参见