GraphQL 工具
本文章,会列举一些好用的 GraphQL 工具,他们可以大大提升你在开发中使用 GraphQL 的效率哦!
Prisma
你可以这么理解,Prisma 是一个 ORM 的库,让你使用 GraphQL 查询时,可以使用对象的形式去查询,而不需要使用查询语句去查询,非常方便,而且 Prisma 还拥有以下特点:
- Prisma 支持很多数据库,比如 Mysql、PostgreSQL、MariaDB 等数据库,以后还会支持更多
- 对 Typescript、JavaScript、Go 都有非常好的支持
- 内置了一些 CURD 的功能
Relay
Relay 是一个 JavaScript 库,由 Facebook 开发,比较多的用在 React 开发中,在 React 开发时,可以使用 Relay 去对 GraphQL 进行增删改查,非常方便。
Relay 具有三个模块:
- Compiler:编译器,负责分析、验证、优化
- Runtime:GraphQL 的运行环境
- Relay/React:Relay 与 React 集成在一起
Apifox
根据官方的介绍,Apifox 是这样的一款工具
- 集成了API 文档、API 调试、API Mock、API 自动化测试 API 一体化协作平台
- 拥有更先进的 API 设计/开发/测试工具
- Apifox = Postman + Swagger + Mock + JMeter
我用了一圈下来,发现 Apifox 的功能确实很多
- 支持接口文档、在线接口文档分享
- 支持本地 Mock、云端 Mock 功能
- 支持 自动化测试,包括测试用例、测试套件功能
- 支持中文显示,且免费使用
- 支持可视化校验、可视化数据库连接
- 拥有 IDEA 插件 Apifox Helper
- 拥有命令行工具 apifox-cli,可以使用命令行运行测试用例
Apollo
Apollo 是一个 JavaScript 的状态管理库,类似于 redux、vuex 这类,Apollo 能让你轻松调用 GraphQL 的查询 API ,并将数据渲染并高效构建UI 组件上。
Apollo 的特性主要有:
- 声明式的使用,数据检索、加载、上传 UI 的逻辑都包含在一个查询中
- 对 React 很友好,充分利用 React 新特性
- 可以放到 JavaScript 应用中使用,适应性很强
- 可以和任意一种 GraphQL API 一起用,兼容性很强
- GraphQL 和 Apollo 是什么
Hasura
Hasura 是一款 GraphQL 引擎,性能非常高,主要是为Postgres 数据库提供 GraphQL API。
Hasura 还具备以下特点:
- 实时查询非常出色,实时性很强
- 使用方便,开箱即用
- Hasura 具有内置的过滤、分页、模式搜索、批量插入、更新、删除突变等功能,查询功能非常出色
- 更新迭代很快,每次都有新功能
URQL
Foemidable 实验室推出的一款 GraphQL 客户端,比较贴近 React hook,非常轻量。
它具有以下几个特点:
- 轻量,性能好
- 支持自定义配置
- 开箱即用