反应变量作为查询参数
Reactive variables as query parameters
在我的 React 应用程序中实现 apollo-client 后,我注意到很多输入数据可能会在某个地方的反应变量中结束。如果我想向服务器请求任何东西,通常,值将来自一个反应变量。因此,如果我可以 link 反应变量的值到我的查询参数,它将大大简化我的代码。理想情况下,我想要的是这样的:
gql`
query FirstName {
firstName @client
}
query LastName {
lastName @client
}
query user($firstName: ???, $lastName: ???){
user(firstName: $firstName, lastName: $lastName){
id
firstName
lastName
address
dob
}
}
`
现在,我知道这些请求会并行解决,所以上面的方法永远行不通...但是,我如何使它起作用?我是否需要为此添加 loadash?是否有 apollo-client 解决方案?我将如何使用 loadash 或任何其他库解决这个问题?
您要查找的是 @export 指令,此文档的 section 解释了如何将本地状态用作变量。
您的查询如下所示
query user($firstName: ???, $lastName: ???){
firstName @client @export(as: "firstName")
lastName @client @export(as: "lastName")
user(firstName: $firstName, lastName: $lastName){
id
firstName
lastName
address
dob
}
}
在我的 React 应用程序中实现 apollo-client 后,我注意到很多输入数据可能会在某个地方的反应变量中结束。如果我想向服务器请求任何东西,通常,值将来自一个反应变量。因此,如果我可以 link 反应变量的值到我的查询参数,它将大大简化我的代码。理想情况下,我想要的是这样的:
gql`
query FirstName {
firstName @client
}
query LastName {
lastName @client
}
query user($firstName: ???, $lastName: ???){
user(firstName: $firstName, lastName: $lastName){
id
firstName
lastName
address
dob
}
}
`
现在,我知道这些请求会并行解决,所以上面的方法永远行不通...但是,我如何使它起作用?我是否需要为此添加 loadash?是否有 apollo-client 解决方案?我将如何使用 loadash 或任何其他库解决这个问题?
您要查找的是 @export 指令,此文档的 section 解释了如何将本地状态用作变量。
您的查询如下所示
query user($firstName: ???, $lastName: ???){
firstName @client @export(as: "firstName")
lastName @client @export(as: "lastName")
user(firstName: $firstName, lastName: $lastName){
id
firstName
lastName
address
dob
}
}