GraphQL 在突变时返回 null [重复]

Posted

技术标签:

【中文标题】GraphQL 在突变时返回 null [重复]【英文标题】:GraphQL returns null on mutation [duplicate] 【发布时间】:2019-06-28 15:55:43 【问题描述】:

我正在使用 GraphQL 连接到多个 RESTful 端点。我正在编写一个突变来更新用户详细信息,但是 GraphiQL 显示以下响应为 null 而不是更新的用户 ID 和名称...


  "data": 
    "updateUser": null
  

  updateUser: (parent, args) => 
    const  id, name  = args;
    return fetch(`$url/users/$id`, 
      method: 'PUT',
      body: JSON.stringify( id, name ),
      headers:  'Content-Type': 'application/json' ,
    )
      .then(res => res.json())
      .then(json => console.log(json));
  ,

提前致谢。

【问题讨论】:

摆脱.then(json => console.log(json))console.log 没有返回值。 请参阅this answer 中的常见场景#5。 【参考方案1】:

您需要返回已解析的 json,否则 fetch 调用没有返回值。

.then(json => json);

如果你愿意

.then(json => 
  console.log(json);
  return json;
);

【讨论】:

以上是关于GraphQL 在突变时返回 null [重复]的主要内容,如果未能解决你的问题,请参考以下文章

注册时突变返回 null

GraphQL 突变在更新时返回 null

GraphQL 嵌套文档在突变时返回 null

GraphQL 突变为嵌套响应返回 null

如何从graphql突变返回新记录而不是null

MongoDB Stitch GraphQL 自定义突变解析器返回 null