Gatsby GraphQL查询多个图像

Mic*_*ård 3 javascript reactjs graphql gatsby

我正在努力弄清楚如何在Gatsbyjs中使用GraphQL查询多个特定图像.我最初的想法是做这样的事情:

file(relativePath: {eq: "images/front.jpg"}) {
  id
}
file(relativePath: {eq: "images/front2.jpg"}) {
  id
}
Run Code Online (Sandbox Code Playgroud)

这会在GraphQL中引发错误:

{
  "errors": [
    {
      "message": "Fields \"file\" conflict because they have differing arguments. Use different aliases on the fields to fetch both if this was intentional.",
      "locations": [
        {
          "line": 28,
          "column": 1
        },
        {
          "line": 31,
          "column": 1
        }
      ]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

查询一个特定文件(图像)工作正常:

file(relativePath: {eq: "images/front.jpg"}) {
  id
}
Run Code Online (Sandbox Code Playgroud)

有什么建议我在这里做错了吗?谢谢 :)

Mic*_*ård 6

发现诀窍是使用graphQL文档中描述的别名

在我的情况下,将查询更改为此似乎可以解决问题:

front: file(relativePath: {eq: "images/front.jpg"}) {
  id
}
front2: file(relativePath: {eq: "images/front2.jpg"}) {
  id
}
Run Code Online (Sandbox Code Playgroud)