![](/img/trans.png)
[英]How can a graphql mutation accept an array of arguments with apollo server express?
[英]How to structure a GraphQL mutation when dealing with an array of objects
我正在使用Apollo Client並嘗試構建一個提交對象的突變,該對象的一部分是子類型的數組,該數組的大小需要動態變化,但是我找不到任何有關如何正確構建此對象的文檔。
這是我使用手動類型的數組進行的突變,效果很好。
const SET_TEMPLATE = gql`
mutation setTemplate(
$id: String,
$name: String,
) {
setTemplate(
id: $id
input: {
name: $name
}
data: [
{
name: "Branded"
format: "String"
canExpand: false
data: {}
},
{
name: "Assigned User"
format: "String"
canExpand: false
data: {}
},
{
name: "Assigned Users"
format: "String"
canExpand: false
data: {}
}
]) {
name
author
data {
name
format
data
}
}
}
`
下面是我想要實現的偽。
const SET_TEMPLATE = gql`
mutation setTemplate(
$id: String,
$name: String,
$data: FieldInput
) {
setTemplate(
id: $id
input: {
name: $name
}
data: [
$data
]) {
name
author
data {
name
format
data
}
}
}
`
我應該跟隨這樣的事情,還是有一種更簡單的方法? React-Apollo的動態突變文件
這是可能的,您在突變變量清除中僅存在一個小問題。
代替$data: FieldInput
聲明為$data: [FieldInput]
。
您想要實現的結果查詢如下所示:
const SET_TEMPLATE = gql`
mutation setTemplate(
$id: String,
$name: String,
$data: [FieldInput]
) {
setTemplate(
id: $id
input: {
name: $name
}
data: $data) {
name
author
data {
name
format
data
}
}
}
`
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.