我可以在GraphQL查询中选择变量吗?
我有一个查询,其中包含一个变量$filter,它是一个字符串 仅当用户表示要过滤结果时,此变量才相关。如果用户不进行筛选,我希望返回所有符合条件的结果 有没有办法在这个查询中省略filter变量?我尝试过传递null,但得到了一个错误我可以在GraphQL查询中选择变量吗?,graphql,react-apollo,gql,hasura,Graphql,React Apollo,Gql,Hasura,我有一个查询,其中包含一个变量$filter,它是一个字符串 仅当用户表示要过滤结果时,此变量才相关。如果用户不进行筛选,我希望返回所有符合条件的结果 有没有办法在这个查询中省略filter变量?我尝试过传递null,但得到了一个错误 const NOTIFY_NEW_PUBLIC_FEELINGS = gql` subscription notifyNewPublicFeelings($page_id: uuid!, $filter: String!) { feelings(
const NOTIFY_NEW_PUBLIC_FEELINGS = gql`
subscription notifyNewPublicFeelings($page_id: uuid!, $filter: String!) {
feelings(
where: { is_public: { _eq: true }, page_id: {_eq: $page_id}, feeling: {_eq: $filter} }
limit: 1
order_by: { created_at: desc }
) {
id
created_at
}
}
`;
问题是您已将$filter标记为
String代码>(!表示不可为空)。因此,传递null必然会引起问题。如果您将字符串标记为可空(仅string
,而不使用!
),则可以安全地通过null