我正在尝试编写一个变异查询,它与graphql完美配合使用
mutation{NewProject(project: {
name:"projet",
namespace:"projet",
environments:[{env:"env1"},{ env:"env2"}]
}) {
name,
namespace,
environments{
env,
}
}}
现在我正在尝试使用Apollo Client建立这种突变,如
createProject() {
this.apollo.mutate({
mutation: gql`
mutation($name: String, $namespace: String, $env: Any) {NewProject(project: {
name:$name,
namespace:$namespace,
environments:$env
}) {
name,
namespace,
environments{
env,
}
}}
`,
variables: {
name: this.name,
namespace: this.namespace,
env: [{
env:"env1"
},{ env:"env2"}]
}
}).subscribe(data => {
console.log('New project created!', data);
}); }
但是由于数组类型的变量$ env,我收到了Http错误响应。感谢您的帮助。
[NewProject(project:
显示您的NewProject
突变需要一个project
参数
将查询更改为
mutation($project: YourInputType) {
NewProject(project: $project) {
name,
namespace,
environments{
env,
}
并将一个完整的对象传递给变量project
使用query variables
中的graphiql
定义测试变量:
{
project: {
name: "sth",
namespace: "sth2",
env: [
{env:"env1"},
{env:"env2"}
]
}
}
然后在客户端中为project
变量准备相同类型的对象(当然,其结构与您的突变输入类型匹配)。>>