Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/github/3.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
如何将变量传递给graphql查询?_Graphql_Gatsby_Graphql Js - Fatal编程技术网

如何将变量传递给graphql查询?

如何将变量传递给graphql查询?,graphql,gatsby,graphql-js,Graphql,Gatsby,Graphql Js,我有个问题。 有一个函数返回graphql查询的结果。在这个函数中,我想传递将在请求中使用的参数,例如,控制订单方向。 我该怎么做 1) 功能查询 import { useStaticQuery, graphql } from "gatsby"; export const useSiteMetadata = (dir) => { const {allContentfulBlogPost:{edges}} = useStaticQuery( graphql`

我有个问题。 有一个函数返回graphql查询的结果。在这个函数中,我想传递将在请求中使用的参数,例如,控制订单方向。 我该怎么做

1) 功能查询

import { useStaticQuery, graphql } from "gatsby";

export const useSiteMetadata = (dir) => {

  const {allContentfulBlogPost:{edges}} = useStaticQuery(
    graphql`
        query {
            allContentfulBlogPost(
                sort:{
                    fields: published,
                    order: $dir

                }
            ){
                edges{
                    node{
                        name,                        
                        alias,
                        published,
                        id
                    }
                }
            }
        }
    `
  );
  return edges;
};
2) 函数调用

const res = useSiteMetadata('ASC');

您好,根据盖茨比的文档:
StaticQuery不接受变量(因此称为“static”),但可以用于任何组件,包括页面
@Hssen感谢您的回答。我看到了这个解决方案。我希望我能通过useStaticQuery做到这一点。感谢
useStaticQuery
StaticQuery
实际上有着相同的用途和相同的限制-它们都无法使用变量。您好,根据盖茨比的文档:
StaticQuery不接受变量(因此称为“static”),但可以在任何组件中使用,包括页面
@hs谢谢您的回答。我看到了这个解决方案。我希望我能通过useStaticQuery做到这一点。感谢
usesticquery
StaticQuery
实际上具有相同的用途和相同的限制-无法将变量与它们一起使用。