如何使用 Apollo GraphQL 更改查询值(其中: )
Posted
技术标签:
【中文标题】如何使用 Apollo GraphQL 更改查询值(其中: )【英文标题】:How change query value (where : ) with Apollo GraphQL如何使用 Apollo GraphQL 更改查询值(其中: ) 【发布时间】:2020-04-26 03:06:41 【问题描述】:使用 graphQL,我们可以使用“where”获取数据
query
activities(where: date: "2020-08-01")
date
collect
如何将日期值更改为参数?
我试试这个:
let date = "2020-01-08"
const loading, error, data = useQuery(GET_ACTIVITY,
variables:
input:
where: date: date
);
【问题讨论】:
像where
这样的任何参数都特定于您正在查询的任何架构。 GraphQL 没有提供过滤或排序数据的内置方法——这取决于每个单独的服务来实现此功能。
【参考方案1】:
首先来自后端的schema definition 必须是这样的:
type Activity
date: String
collect: String
...
type Query
activities(date: String): [Activity]
...
然后在前端使用来自@apollo/client
的gql
函数创建查询:
import gql, useQuery from '@apollo/client';
...
const GET_ACTIVITY = gql`
query Activities($date: String!)
activities(date: $date)
date
collect
`;
最后这样称呼它:
let date = "2020-01-08";
const loading, error, data = useQuery(GET_ACTIVITY,
variables:
date
);
更多查询:https://www.apollographql.com/docs/react/data/queries
【讨论】:
我有以下错误:“查询”类型的字段“活动”上的未知参数“日期”。” 我想使用“where : json”获取 apollo中没有where
,可以分享一下Activity
的schema定义吗?以上是关于如何使用 Apollo GraphQL 更改查询值(其中: )的主要内容,如果未能解决你的问题,请参考以下文章
如何从 graphQL apollo 突变或查询上的 cookie 更新授权标头
如何使用 apollo / graphql 实现节点查询解析器
如何使用 apollo 服务器从变量运行 graphql 查询
如何使用 react-apollo 使用相同的查询进行多个 graphql 查询?