具有空字符串值的graphql mutate对象

具有空字符串值的graphql mutate对象,graphql,apollo,mutation,vue-apollo,Graphql,Apollo,Mutation,Vue Apollo,我正在尝试使用vue apollo let字段=[ {name:'A',value:'0'}, {名称:'B',值:''} ] 这是阿波罗 .变异({ 突变:gql` 变异($serve:Int!,$fields:[ComponentInput]){ visitCreate(服务:$serve,字段:$fields){ 身份证件 ... } } `, 变量:{ 发球:这个发球id, 字段:字段 } }) 但出现以下错误: Variable "$fields" got invalid value

我正在尝试使用
vue apollo

let字段=[
{name:'A',value:'0'},
{名称:'B',值:''}
]
这是阿波罗
.变异({
突变:gql`
变异($serve:Int!,$fields:[ComponentInput]){
visitCreate(服务:$serve,字段:$fields){
身份证件
...
}
}
`,
变量:{
发球:这个发球id,
字段:字段
}
})
但出现以下错误:

Variable "$fields" got invalid value [{"name":"A","value":"0"},{"name":"B","value":null}]; Expected non-nullable type String! not to be null at value[1].value
实际上,
字段
应该是
[{“name”:“A”,“value”:“0”},{“name”:“B”,“value”:“}]
,我不知道怎么做

我还尝试了
JSON.stringify(字段)


请提供任何帮助

我不确定,但在文档中是:
name:String!值:字符串
@DanielReardent这实际上可能是客户端的一个bug。如果字段是
String
,则不应在服务器端将空字符串强制为null。如果您查看浏览器开发工具的网络选项卡中的传出请求,我猜发送的值实际上是
null
,对吗?是的,是这样,问题是这样的。空字符串变为null,网络选项卡中的结果是
{name:“A”,value:null}
哦,不,不是这样的,我会放一个屏幕快照OK,所以问题不在于
vue apollo
apollo客户端。数据正在正确发送。可能是服务器运行的任何GraphQL实现的错误。看起来空字符串被强制为null,这是不应该发生的。我用GraphQL.js对此进行了测试,得到了预期的结果(将空字符串传递给解析器,没有错误)。根据错误,看起来像是
graphql-php
,但我不完全确定。我不确定,但在文档中是:
name:String!值:字符串
@DanielReardent这实际上可能是客户端的一个bug。如果字段是
String
,则不应在服务器端将空字符串强制为null。如果您查看浏览器开发工具的网络选项卡中的传出请求,我猜发送的值实际上是
null
,对吗?是的,是这样,问题是这样的。空字符串变为null,网络选项卡中的结果是
{name:“A”,value:null}
哦,不,不是这样的,我会放一个屏幕快照OK,所以问题不在于
vue apollo
apollo客户端。数据正在正确发送。可能是服务器运行的任何GraphQL实现的错误。看起来空字符串被强制为null,这是不应该发生的。我用GraphQL.js对此进行了测试,得到了预期的结果(将空字符串传递给解析器,没有错误)。根据错误,看起来像是
graphqlphp
,但我不能完全确定。