Javascript 自定义graphql查询

Javascript 自定义graphql查询,javascript,graphql,Javascript,Graphql,我有两个返回field1、field2或field1和field2的graphql查询。我还有一个布尔标志field1和field2。您能帮我编写一个函数,它将生成以下三个qraphql查询之一: gql query { employee { name } }; gql query { employee { surname } }; gql

我有两个返回field1、field2或field1和field2的graphql查询。我还有一个布尔标志field1和field2。您能帮我编写一个函数,它将生成以下三个qraphql查询之一:

gql
    query  {
        employee {
            name
        }
    };


gql
    query  {
        employee {
            surname
        }
    };


gql
    query  {
        employee {
            name
            surname
        }
    }


function Form () {
...
    const { data } = useQuery(
        GET_NAME // query 
    );

    const onClick = () => {

    ....
    return textInput.current!.value=data.me.name;
将执行查询(可能通过
useQuery
)并返回以下可能的字符串之一:

name
surname
name + surname
例如:

如果我检查名称,函数将生成并执行查询

query  {
    employee {
        name
    }
};
query  {
    employee {
        surname
    }
};
并将返回值-John

如果我选中姓氏,函数将生成并执行查询

query  {
    employee {
        name
    }
};
query  {
    employee {
        surname
    }
};
并将返回值-Connor

如果我查一下姓名

 query  {
        employee {
            name
            surname
        }
    };
并将归还约翰·康纳

它是否与SQL查询类似

详细说明: 假设我在服务器{name:John,姓氏:Connor}上只有一个对象,没有id和其他字段。当我调用onClick函数时,客户端应用程序必须只生成并执行一个查询。你能帮忙吗

例如,如果我使用SQL DB,我可以将字符串连接到查询中 常数q=

选择${field}
来自员工

其中,字段可以通过相等的“名称”、“姓氏”或“名称、姓氏”生成查询 “从员工中选择姓名” “从员工中选择姓氏” 从员工中选择姓名

此查询将返回“John”、“Connor”或“John Connor”。 graphql是否可以通过连接或插值生成查询

graphql是否可以通过连接或 插值 简单的答案是否定的

但是,如果与其他工具(如使用mongoose和Sequalize.js的mongoDb)结合使用,这是可以做到的


根据您使用的数据库和服务器的不同,您需要使用上述工具将必填字段传递到ORM

您可以分享您的实际查询和一些代码吗?我仍然不理解您试图获得的结果!如果其中一个为空,您想获取名称还是用户名?如果它们都已定义,您想获取两者吗?@Nux添加了示例,因此您想根据某些情况动态传递字段?@Nux我添加了解释,请帮助我。graphQL查询是字符串类型的变量。感谢您的响应。我添加了解释。