npm 包 tsxgql 使用教程

简介

tsxgql 是一种用于前端项目中的 GraphQL 客户端类型安全生成器。

它通过编写 .graphql 文件来创建一个代码生成器,用来构建完全类型安全的 GraphQL 客户端。它将会根据 .graphql 文件生成一个 TypeScript 模块,该模块包含了该 GraphQL 服务器中定义的所有查询、变量和响应的 TypeScript 类型。

安装

首先,你需要有一个 Node.js 开发环境。

然后,在终端中运行以下命令来全局安装 tsxgql:

--- ------- -- ------

使用

创建一个 .graphql 文件:

----- ------------ ---- -
  -------- ---- -
    --
    -----
    ---------
    --------
  -
-

在终端中运行以下命令:

------ -------------- ----------- --------------- -------- ------------------------ -------------

上述命令将会生成 src/generated/graphql.ts 文件夹以及 MyGraphQLClient 命名空间。

变量

生成器将会为 Query 处理所有变量类型,并根据 .graphql 文件自动补全。例如,使用上述命令,会在 GetUserQueryVariables 类型中创建一个 id 属性。

--------- --------------------- -
  --- -------
-

返回数据

对于返回的数据,tsxgql 将会根据 .graphql 文件自动生成极其详尽的类型。例如,使用上述命令,会在查询返回的类型中创建一个 data 属性。

--------- ------------ -
  ----- -
    ----- -
      --- -------
      ------ -------
      ---------- -------
      --------- -------
    -
  -
-

发送请求

你需要一个 GraphQL 客户端来执行请求。常见的是使用 Apollo 或者 Relay,但是你也可以使用浏览器自带的 fetch 函数发送请求。使用 Apollo 作为客户端支持 autogeneration。

------ - ------------- ------------- - ---- -----------------
------ - ---------------- ------------- --------------------- - ---- ----------------------

----- ------ - --- --------------
  ---- ------------------------------------
  ------ --- ----------------
---

----- -------- ----------- ------- -
  ----- - ---- - - ----- -------------------------- ------------------------
    ------ ----------------
    ---------- - -- --
  ---

  ------ ----------
-

后续学习

例如,你想显示多个用户并可以对其进行排序或过滤。这就需要一个更高级别的 GraphQL 查询。tsxgql 可以为 GraphQL 接口生成类型,以便生成更高级别的查询。

结论

在本文,我们学习了如何快速上手 tsxgql,如何为变量和返回数据生成类型,并如何发送请求。tsxgql 对于构建前端 GraphQL 客户端非常有用。它将大大提高生产力,因为它自动为您处理所有类型和查询。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6006737a890c4f727758415f


猜你喜欢

  • npm 包 fractal-objects 使用教程

    简介 在前端开发中,有时候需要生成一些随机数据或模拟一些数据,可以使用 npm 包 fractal-objects。fractal-objects 是一个生成随机数据的工具库,它通过使用递归和分形算法...

    4 年前
  • npm 包 react-jsonschema-form-extras-ben 使用教程

    介绍 在前端开发过程中,我们常常需要处理表单数据。JSON Schema 是一种描述数据格式的语言,可以用于定义和验证表单数据的格式,帮助我们更方便地处理数据。而 react-jsonschema-f...

    4 年前
  • npm 包 webpack4-react-vue-ests 使用教程

    在前端开发中,webpack 是一个十分重要的工具。它能够将多个 JavaScript 文件打包成一个文件,同时支持打包 CSS、图片等资源。而对于在开发过程中使用了 React 和 Vue,以及对代...

    4 年前
  • npm 包 api-concurrency 使用教程

    引言 在开发前端应用时,我们会用到很多的 API 接口,而这些接口往往会有访问频率限制,如果我们在短时间内多次请求 API 接口,就可能会触发频率限制导致请求失败。

    4 年前
  • npm 包 @k_higuchi/pulumi-aws-staticsite-builder 使用教程

    前端开发者通常需要将网站部署到云端,让用户可以访问和使用。云服务提供商如 AWS 为开发者提供各种方便快速的部署方式,其中,静态网站部署是最简单最快捷的方式之一。本文将介绍一个 npm 包 @k_hi...

    4 年前
  • 使用教程:npm 包 react-linkedin-certification

    简介 在前端开发中,我们经常需要在网站或者应用中验证用户的身份或者技能。LinkedIn 是世界上最大的职业社交平台之一,身份和技能认证是 LinkedIn 上非常受欢迎和重要的功能。

    4 年前
  • npm 包 gulugulu-test-1 使用教程

    在前端开发中,经常使用到各种 npm 包以提高效率和代码质量,其中一个常见的 npm 包就是 gulugulu-test-1。本文将介绍在项目中如何使用这个 npm 包,从而让你的开发更加高效和轻松。

    4 年前
  • npm 包 @dployhub/feathers-dynamoose-repo 使用教程

    引言 作为前端开发,我们经常会使用一些后端提供的 API 来获取数据,而这些 API 可能涉及多个表的操作。因此,我们需要一个数据存储库,这样我们就可以快速地存储和检索数据。

    4 年前
  • npm包express-api-locker使用教程

    在web开发中,我们经常需要实现接口并发控制,防止接口被恶意访问或频繁刷接口。这时候,一个轻量级且易于使用的npm包——express-api-locker便可以发挥其作用。

    4 年前
  • npm 包 object-search-key 使用教程

    前言 在前端开发中,经常会使用 JSON 对象进行数据的存储和传输。不过,在实际开发中,我们经常需要在 JSON 对象中查找某个键对应的值,这时候就可以使用 object-search-key 这个便...

    4 年前
  • npm 包 fis-parser-less-hh 使用教程

    在前端开发中,很多人都会使用 Less 来处理 CSS,同时也会使用 fis3 来构建项目。而 fis-parser-less-hh 插件可以将 Less 编译成 CSS,同时兼容 fis3 的构建流...

    4 年前
  • npm 包 koa-mid-end 使用教程

    在开发过程中,经常需要使用到各种 npm 包来加速开发。其中,koa-mid-end 是一种中间件,可以用来简化 koa 应用程序的开发,同时提供了一些常用的功能,如错误处理、静态文件服务、路由等。

    4 年前
  • NPM 包 MusicBrainz-Augmentation 使用教程

    如果你是前端开发者,并且需要处理和展示音乐相关的数据,那么你可能需要调用 MusicBrainz 这个音乐元数据库提供的数据。而 MusicBrainz-Augmentation 就是一个可以帮助你处...

    4 年前
  • npm 包 mongoose-batches 使用教程

    在大多数基于 Node.js 的后端应用中,使用 MongoDB 作为数据库是再常见不过的选择了。而对于 MongoDB 数据库的操作,常用的库之一就是 Mongoose。

    4 年前
  • npm 包 vue-storage-manager 使用教程

    引入 vue-storage-manager 是一个用于在 Vue 程序中管理本地存储和会话存储的 npm 包。使用它可以方便地对数据进行存储、查询、删除等基本操作。

    4 年前
  • npm 包 rn-phone-call 使用教程

    在移动应用开发中,经常需要增加一些与系统交互的功能,如拨打电话、发送短信等。rn-phone-call 是一个 npm 包,可以帮助我们实现拨打电话的功能。本文将介绍 rn-phone-call 的使...

    4 年前
  • npm 包 simple-cache-z 使用教程

    前言 在前端开发过程中,常常需要对数据进行缓存以提高页面性能和用户体验。其中,npm 包 simple-cache-z 是一个简单但功能齐全的缓存库,这篇文章将介绍其使用教程。

    4 年前
  • npm 包 ghasedak 使用教程

    简介 npm 是 Node.js 的包管理器,提供了大量的扩展包可以使用,而 ghasedak 则是一个帮助前端开发者发送短信的 npm 包。在本篇文章中,我们将详细介绍 ghasedak 的使用教程...

    4 年前
  • npm 包 google-spreadsheet-i18n 使用教程

    在前端国际化中,往往会涉及到多语言的支持,而多语言的配置需要一个翻译工具,以支撑我们的业务适应不同的语言环境。这时候,Google Sheets 便成了我们的选择之一。

    4 年前
  • npm 包 ed-blog-theme 使用教程

    在前端开发中,我们常常需要使用到现成的一些库和框架,以提高项目开发效率和代码质量。而 npm(Node Package Manager)就是一个非常强大的包管理器,可以让我们轻松地安装和管理各种现成的...

    4 年前

相关推荐

    暂无文章