java js 解析器_graphqljs具有多个参数的解析器
我试图找出编写一个过滤多个参数的解析器的最佳方法 . 我有以下graphql类型
const userQuery = new GraphQLObjectType({
name: 'Query',
fields: {
Users: {
type: new GraphQLList(User),
args: {
userId: { type: GraphQLString }
},
resolve: function (_, { UserId}) {
return new Promise((resolve, reject) => {
//Code to query the data store for the user with the given UserId
})
}
}
}
});
用户类型具有以下字段
姓名
UserId
类型
性别
现在,如果我想介绍基于名称过滤用户的能力,那么最好的方法是什么 . 我能想到的唯一方法是修改解析器以包含其他args,然后根据传入的内容将其发送到数据库 . 例如
const userQuery = new GraphQLObjectType({
name: 'Query',
fields: {
Users: {
type: new GraphQLList(User),
args: {
userId: { type: GraphQLString }
},
resolve: function (_, { UserId, name}) {
return new Promise((resolve, reject) => {
//Check which argument is passed in and then run the query against the datastore
})
}
}
}
});
有没有更好的方法来做到这一点?如果我希望用户能够过滤另一个属性,那么它会变得更加复杂,并且解析功能将变得庞大而复杂 .
java js 解析器_graphqljs具有多个参数的解析器相关推荐
- js中top,left,height,width相关参数的解析和实例
下面的这些参数的解析都是针对于IE浏览器的: 得到屏幕中鼠标的坐标,相对于整个页面: x=event.clientX, y=event.clientY 得到当前窗口的宽度: w=document.bo ...
- python带参数的装饰器的作用_Python带参数的装饰器运行原理解析
关于装饰器的理解,特别像<盗梦空间>中的进入梦境和从梦境出来的过程,一层一层的深入梦境,然后又一层一层的返回,被带入梦境的是被装饰的函数,装饰器就是使人入梦的工具. 上代码: from f ...
- python 装饰器 参数-Python装饰器(4)带参数的装饰器
内容纯属个人理解,不对之处,欢迎指正. 之前说过,装饰器其实就是函数,既然是函数,那就可以有参数,装饰器也不例外,接下来我们来分析带参数的装饰器. 如何构造带参数 带参数倒是很简单,在装饰的时候给装饰 ...
- 戴尔服务器型号用途,戴尔服务器DELLPowerEdgeR610详细参数用途解析-20210408230926.doc-原创力文档...
戴尔服务器DELLPowerEdgeR610详细参数用途解析 戴尔服务器DELLPowerEdgeR610详细参数用途解析 戴尔服务器DELLPowerEdgeR610详细参数用途解析 戴尔服务器 D ...
- 装饰器python3菜鸟教程_认识Python装饰器
Python中的装饰器用来给Python中的函数添加一些辅助功能.比如我们可以把[输出日志]这个辅助功能写到一个装饰器里.只要我们在某个函数A之前添加了这个[输出日志]的装饰器,那么执行函数A的时候, ...
- python装饰器哪个好_[Python] 对 Python 装饰器的理解心得
最近写一个py脚本来整理电脑中的文档,其中需要检校输入的字符,为了不使代码冗长,想到使用装饰器. 上网搜索有关python的装饰器学习文档,主要看的是AstralWind的一篇博文,以及Limodou ...
- js 数组 实现 完全树_JavaScript的工作原理:解析、抽象语法树(AST)+ 提升编译速度5个技巧
摘要: JS的"编译原理". 原文:JavaScript的工作原理:解析.抽象语法树(AST)+ 提升编译速度5个技巧 作者:前端小智 Fundebug经授权转载,版权归原作者所有 ...
- 28 Java类的加载机制、什么是类的加载、类的生命周期、加载:查找并加载类的二进制数据、连接、初始化、类加载器、双亲委派模型、自定义类加载器
28Java类的加载机制 28.1.什么是类的加载 28.2.类的生命周期 28.2.1.加载:查找并加载类的二进制数据 28.2.2.连接 28.2.3.初始化 28.3.类加载器 28.4.类的加 ...
- MyBatis参数名称解析器-ParamNameResolver解析
ParamNameResolver ParamNameResolver是一个参数名解析器,负责把方法的参数按顺序解析出来并进行标注 主要用来处理接口形式的参数,最后会把参数处放在一个map中 map的 ...
最新文章
- C 关于页面刷新和combobox的使用
- 2021年值得关注的5个RPA趋势
- linux 某个文件打不开了,linux操作系统下,exe文件为什么打不开?
- 根据文件路径生成相应文件
- python的迭代器指向第一个字符_python(七)字符串格式化、生成器与迭代器
- 【Python】大数据存储技巧,快出csv文件10000倍!
- jQuery之jQuery扩展和事件
- javascript字符串相关的面试题总结
- Linux下配置服务器节点上的时区
- 画面设置_LOL手游设置界面翻译:基本设置/画面/音效/功能与快捷语音
- 受iPhone 12销量变化影响 Q2柔性OLED面板出货量预计环比下滑35%
- C#之数据库编程:从入门到精通
- 使用AjaxPro实现ajax效果
- 如何政治正确地黑咪蒙?!
- 《研究生英语科技论文写作》学习笔记
- [数据库] DSN是什么/是什么意思--解释
- OpenCV(4.0.0) Error: Assertion failed (dst.data == (uchar*)dst_ptr) in cvShowImage
- 《现代操作系统》读书笔记之——进程间通信
- mysql从入门到精通作者_mysql从入门到精通(连载)
- jQuery中的$.ajax
热门文章
- php mysql化妆品商城计算机毕业设计网站成品
- 你会几种“复制”文本的方式?----浅谈I/O流
- python 两个变量同时循环_python基础篇(子非鱼)
- java+jquery实现长轮询案例_网页实时聊天之js和jQuery实现ajax长轮询
- oracle 对表重建索引,重建特定Oracle表的所有常规索引
- 光电整纬机常见操作问题
- ICANN总裁Fadi Chehadé:IPv6峰会全面推动了IPv6在中国的发展与产业落地
- .NET基础编程之特性 - Attribute
- .NET应用架构设计—表模块模式与事务脚本模式的代码编写
- linux单块网卡绑定多个ip及网卡聚合绑定多个ip方法