Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么graphql查询不能在react中工作?_Javascript_Reactjs_Graphql - Fatal编程技术网

Javascript 为什么graphql查询不能在react中工作?

Javascript 为什么graphql查询不能在react中工作?,javascript,reactjs,graphql,Javascript,Reactjs,Graphql,在react项目中,我使用了一个查询来搜索github用户数据。查询如下: const GET_USER = (user) => ` { user(login: "${user}") { name login avatarUrl company gists{ totalCount } following{ totalCount } followers(last: 5){ edges{

在react项目中,我使用了一个查询来搜索github用户数据。查询如下:

const GET_USER = (user) => `
{
  user(login: "${user}") {
    name
    login
    avatarUrl
    company
    gists{
     totalCount
   }
   following{
      totalCount
    }
    followers(last: 5){
      edges{
            node{
                id
            name
            avatarUrl
        }
      }
    }
    repositories(last: 5){
      edges{
        node{
          id
          name
        }
      }
    }
  }
}
`;
如果我只通过在
followers
中添加一个名为
email
的字段来更新查询,react应用程序将停止工作:


followers(last: 5){
      edges{
            node{
            id
            name
            avatarUrl
            email
        }
      }
    }

如果在查询中添加有关组织的数据,也会发生同样的情况,如下所示:

 organizations(last: 5){
      edges{
        node{
          id
          name
        }
      }
    }
但是,当我在这个链接中执行相同的查询时,它会起作用

我的react项目位于链接:[中。查询位于
App.js
文件中,该文件位于
src
文件夹中


它停止工作,因为用户可能没有此类信息

我克隆了你的回购协议并添加了代码

<div>email:{user.following.email}</div>
至于
追随者
更新

const Followers=({Followers})=>(
为SO更新了追随者:
    {followers.edges.map(follower=>(
  • {follower&&follower.node&&follower.node.name&&( 名称:{follower.node.Name} {follower&&follower.node&&follower.node.email&&( 电子邮件:{follower.node.Email}
  • ))}
);
我的个人资料截图。一个关注者有电子邮件,另一个没有。

我把你的回购协议从你的问题中克隆出来
请确保您的令牌具有权限。在最激烈的时刻,我授予了对我的密钥的完全访问权限。请检查您的令牌!

但问题不在于
用户。following
。问题在于
followers.node
。followers.node&&followers.node.email&(email:
{followers.node.email})
但它仍然不起作用它似乎起作用了。我会在
map
函数中将名称更改为
follower
,以防止冲突。另外,你在哪里使用代码?我添加了完整的函数,以防万一我像你那样做了,但我只是添加了电子邮件字段,没有起作用……我有文件,所以你可以看到我的update:[我刚刚更新了我的帖子,在像你问的那样更新代码之后,我收到了错误。这是另一个问题,但我更新了我的代码。我无法复制它,尝试了空用户,键入了任何内容。什么都没有。我甚至尝试了构建而不是运行开发代码
<div>email:{user.following.email || ""}</div>
{user && user.following && user.following.email &&
  (<div>email:{user.following.email}</div>)
}
<p>
  {user && user.organizations &&
    <div>Organization name:{user.organizations.name}</div>
  }
</p>
const Followers = ({ followers }) => (
<div>

  <strong>Followers updated for SO:</strong>

  <ul>
    {followers.edges.map(follower => (
    <li key={follower.node.id}>
      <img src={follower.node.avatarUrl}/>
      <div>
        {follower && follower.node && follower.node.name && (
        <div>Name:{follower.node.name}</div>) }
      </div>
      <div>
        {follower && follower.node && follower.node.email && (
        <div>Email:{follower.node.email}</div>) }
      </div>
    </li>
    ))}
  </ul>
</div>
);