首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于vuex-orm插件“筛选对象”查询的GraphQL模式

用于vuex-orm插件“筛选对象”查询的GraphQL模式
EN

Stack Overflow用户
提问于 2021-06-28 22:54:00
回答 1查看 107关注 0票数 0

试图让“对象过滤”与阿波罗服务器和vuex-orm一起工作。

堆叠:

  • 后端: nodejs,阿波罗服务器
  • 前端: vue/vuex-orm + vuex-orm-graphql-插件.该应用程序根据文档中描述的"filter对象“实现.fetch()
代码语言:javascript
复制
Comment.fetch({ postId: '15', deleted: false });

我无法让客户端发送查询,因为我不知道如何为"filter对象“案例定义查询模式。

尝试了几种方法,例如:

代码语言:javascript
复制
input FilterObject {
  postId: String
  deleted: Boolean
}

type query {
  comments(filter: FilterObject)
}

不发送graphql查询请求,错误:

代码语言:javascript
复制
"Cannot query field \"nodes\" on type \"Comments\"."

如果我稍微修改一下模式,我就可以得到要发送的查询,但是filter字段类型出错。

如何定义模式才能使过滤器功能工作?

EN

回答 1

Stack Overflow用户

发布于 2021-07-05 19:40:47

更新:

我不确定这是实现目标的最佳方法,但我发现使用“游标”概念可以解决问题。

我定义了一个“filter”输入类型,它包含filter-by字段。

接下来,对于查询输出,有一个新的游标类型,它包含“节点”字段。注意,节点字段是查询类型的数组。

所以结果是这样的:

代码语言:javascript
复制
input ConfigFilter {
    services: [String]!
}
type ConfigCursor {
    cursor: String!
    nodes: [Config!]
}
type Config {
    id: ID!
    service: String!
    data: Blackbox
}

正如所指出的,我发现并证实了这一工作与vuex-orm和相关的graphql插件。

希望它能帮上忙!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68170810

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档