GraphQL 是一种新兴的查询语言,提供了一种灵活的方式来描述数据传输的形式。而 grow-graphql-schema 是一个基于 GraphQL 的库,可以自动生成 GraphQL 查询的模式。在本文中,我们将学习如何使用 npm 包 grow-graphql-schema。
准备工作
如果您需要使用此 npm 包,在安装之前,您需要将其安装为依赖项。可以通过运行以下命令进行安装:
npm install grow-graphql-schema
使用 npm 包之前,我们还需要确保我们已经具有 GraphQL 服务器和数据库。一个简单的 GraphQL 服务器和 MongoDB 数据库可以使用 Apollo Server 和 Free MongoDB Atlas 上搭建。
安装
npm install grow-graphql-schema
生成 GraphQL 模式
现在,我们已经成功安装了 grow-graphql-schema。接下来,我们将学习如何生成 GraphQL 查询的模式。为此,我们需要编写一个配置对象,其中包含有关数据集合的信息。
我们需要为每个应用程序数据集合定义一个对象。每个定义都必须包含以下信息:
- 集合名称
- 集合的 schema
- 标识符
-- -------------------- ---- ------- --- ---- - - ----- ------- ------- ---------- -- --------- ------ ---- - -------- ------ ----------- - ---- ------- -- --------- -- -- --- ----- - - ----- -------- ------- ----------- -- ---------- ------ ----- - -------- ------ ----------- - ---- ------- -- --------- -- -- --- ----------- - - ----- ----- --展开代码
接下来,我们需要将配置对象传递给 grow-graphql-schema 并调用生成模式的函数。以下是生成模式的代码:
-- -------------------- ---- ------- ------ - -------------------- - ---- ---------------- ------ - -- ---------- ---- ---------------------- ----- -------- ---------------- - ----- ------------ - - ------------ ------------ -- ----- --------- - ----- ---------------------------------- ----- ------ - ---------------------- --------- --------- --- ------ ------- - ------ - -------------- --展开代码
示例应用
现在让我们看一个具体的示例。我们将创建一个简单的示例,其中我们希望从数据库中获取 users 集合中的所有数据。以下是服务器端代码:
-- -------------------- ---- ------- ------ ------- ---- ---------- ------ - ------------ - ---- ------------------------ ------ - -------------- - ---- ----------- ------ - ---- - ---- ---------------- ----- --- - ---------- ----- ---- - ----- ----- -------- ------------------- - ----- ------ - ----- ----------------- ----- ------ - --- -------------- ------- -------- - ---- -- --- ----- --------------- ------------------------ --- --- - ---------------- -- -- - ------------ --- ------ ----- -- ---------------------------------------------- -- ---展开代码
查询 GraphQL API
生成的 GraphQL 模式类似于以下代码(部分省略)
-- -------------------- ---- ------- ---- ----- - ------ ------- - ---- ---- - ---- --- ----- ------ ---- --- -展开代码
我们现在可以使用以下 GraphQL 查询从 API 中获取数据:
query { users { _id name age } }
总结
在本文中,我们了解了如何使用 npm 包 grow-graphql-schema 来生成 GraphQL 查询模式。我们看到了如何定义配置对象,将其传递给 grow-graphql-schema,并从我们的 GraphQL API 中获取数据的查询。希望这篇文章能够帮助您开始使用 grow-graphql-schema 并构建出强大的 GraphQL API!
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005576281e8991b448d45c6