我对 Apollo/GraphQL/ Prisma /Yoga 有点了解,但我总是卡住的一点是,有这么多的加倍发生。
假设我有一个名为Client
, title
, firstName
, lastName
,email
等的模式类型phone
。address
当我进行突变时,我需要输入所有字段:
const result = await this.props.saveClientMutation({
variables: {
title,
firstName,
lastName,
email,
(etc)
}
})
然后转到我在客户端中的实际 graphQL 定义,在那里我再次输入所有字段(两次!)
mutation SAVE_CLIENT_MUTATION ($title: String!, $firstName: String!, $lastName: String!, $email: String!) {
login(title: $title, firstName: $firstName, lastName: $lastName, email: $email) {
client {
id
firstName
lastName
}
}
}
然后它进入我服务器中的解析器(感谢上帝的传播运算符),然后进入我的数据库模式,在那里我基本上第四次键入所有相同的字段。
这似乎是错误和不一致的巨大表面积。我是否完全误解了这是如何工作的,或者是否意味着要进行如此疯狂的重新输入?