npm 包 nswag 使用教程

简介

nswag 是一个 .NET Core 和 TypeScript/JavaScript 的代码生成器,可以非常简单的实现使用 C# Web API 动态生成 Swagger 规范文档,也可通过其命令行接口或者记事本文件(.nswag)的形式,生成客户端代码,例如 Angular 和 React。

安装

可以通过 npm 命令进行安装:

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

安装完成后,让我们来看看如何使用它。

生成客户端代码

我们可以使用 nswag 命令行来生成客户端代码:

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

其中,MyApiDefinition.json 是 API 定义 Swagger 文档,TypeScriptAngular2 是想要生成的客户端代码的类型,MyGeneratedCode.ts 是生成的客户端代码文件名。

这里我们以 Swagger 官方提供的在线演示用户 RESTful API为例,来生成 Angular 2 所需的客户端代码。

首先,我们需要将 Swagger 文档下载下来,使用命令行:

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

然后,我们就可以使用 nswag 命令来生成 Angular 2 的客户端代码:

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

在上面的命令中:

  • -t angular:告诉 nswag 生成 Angular 2 的代码。
  • -o generated/MyApiService.ts:告诉 nswag 将生成的代码保存到 generated/MyApiService.ts 文件中。

现在,我们已经获得了一个名为 MyApiService.ts 的文件,里面包含了 API 的所有操作。

对 Angular 应用进行配置

让我们进一步完善我们的项目。首先,我们需要安装 Angular CLI,以便我们可以使用 ng 命令快速地构建我们的应用程序:

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

然后,我们需要将刚才生成的 MyApiService.ts 文件复制到我们的项目中:

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

在这里,我们将服务放到一个单独的目录 src/app/swagger 中。

最后,我们需要在 Angular 应用程序中注入服务。在 app.module.ts 文件中添加:

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

现在,我们已经可以通过 MyApiService 使用 API,以下是一个示例组件:

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

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

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

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

现在我们可以使用 ng serve 来启动我们的应用程序并尝试使用 API。

总结:使用 nswag 命令行非常容易地生成客户端代码。我们在这里使用了官方演示 API 来生成 Angular 2 的客户端代码,然后注入到我们的 Angular 应用中。

结语

愿本文对各位前端爱好者有所启发,让您能够理解 nswag 的基本用法和如何生成客户端代码,以及如何将它与 Angular 应用程序一起使用。如有问题或意见,请在评论区留言,我们会尽快回复您。

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


猜你喜欢

  • npm 包 guacamole 使用教程

    在前端开发中,包管理工具是必不可少的,其中 npm 是最流行的一种。guacamole 是一个 npm 包,是一个基于 WebRTC 的远程桌面协议的客户端实现,可以让用户在任何浏览器中远程访问远程服...

    5 年前
  • npm 包 rowdy 使用教程

    随着 web 应用程序越来越复杂,前端开发变得越来越困难。使用 npm 包可以方便地解决一些问题,例如自动构建和测试。本文将介绍一个叫做 rowdy 的 npm 包,可以用于自动化测试前端应用程序的路...

    5 年前
  • npm 包 builder-docs-archetype-dev 使用教程

    在前端开发中,使用可靠的构建工具可以大大提高开发效率。npm 包 builder-docs-archetype-dev 就是一个强大的构建工具,它可以帮助你生成、编译和打包前端文档,极大地简化开发过程...

    5 年前
  • 前端技术文章:npm 包 formidable-charts-docs 使用教程

    随着现代化前端开发的日益发展,npm 成为了前端开发中必不可少的工具之一。而 formidable-charts-docs 作为 npm 包之一,为前端开发者提供了一种快速生成图表的方式。

    5 年前
  • npm 包 victory-docs 使用教程

    前言 在前端开发中,图表的可视化效果非常重要,让数据更加直观。针对这个需求,Victory 是一个用于 React 应用程序的开源图表库,它提供了多种不同类型和样式的图表和运动效果。

    5 年前
  • npm 包 gatsby-transformer-remark 使用教程

    Gatsby 是一个现代化的静态站点生成器,它使用 React 构建,支持各种数据源,并且可以生成非常快速的静态网站。而 gatsby-transformer-remark 则是 Gatsby 中处理...

    5 年前
  • npm 包 gatsby-core-utils 使用教程

    简介 gatsby-core-utils 是 Gatsby 的一个 npm 包,提供了一些常用的工具函数,可用于开发 Gatsby 网站和应用程序。 这些工具函数被设计为纯函数,也就是说它们应该是无状...

    5 年前
  • npm 包 gatsby-theme-notes 使用教程

    介绍 Gatsby 是一个现代静态网站生成器,采用 React 和 GraphQL 技术栈,并且官方社区提供了很多插件、主题等扩展功能,帮助开发者快速构建响应式的静态网站。

    5 年前
  • npm 包 gatsby-source-figma 使用教程

    Gatsby 是一款基于 React 的静态网站生成器,它以驾驭 Webpack 和 GraphQL 为特点,被越来越多的开发者使用。而 Figma 是一款设计师和团队配合所使用的设计工具,它提供了快...

    5 年前
  • npm 包 sidepane 使用教程

    1. 什么是 sidepane? sidepane 是一个基于 React 的组件库,可以用于构建响应式、可定制的侧边栏菜单,支持实时搜索和筛选。 2. 安装和使用 2.1 安装 可以使用 npm 或...

    5 年前
  • npm包gatsby-transformer-react-docgen使用教程

    在前端开发中,文档生成是一项非常重要的任务。为了更好地生成一些复杂组件的文档,我们可以使用gatsby-transformer-react-docgen。本文将介绍如何使用这个npm包来生成您的组件文...

    5 年前
  • npm 包 gatsby-ui 使用教程

    在现代化的 Web 开发中,前端框架和 UI 库的重要性不言而喻。对于 React 生态圈的开发者而言,Gatsby.js 和 gatsby-ui 构成了整个前端开发工具链的核心。

    5 年前
  • npm 包 gatsby-plugin-meta-redirect 使用教程

    在前端开发中,我们经常需要对网站的 meta 标签进行修改。通常,我们会在页面的 Head 中添加一些代码来对 meta 标签进行修改。然而,当我们的网站包含多个页面时,这样的修改可能会变得非常繁琐。

    5 年前
  • npm包smooth-doc使用教程

    简介 npm是Node.js的包管理器,允许您从 npm 的发布服务中安装和管理Node.js 包。其中,smooth-doc是一款基于Node.js的文档生成工具,它可以简化前端项目的文档编写和发布...

    5 年前
  • npm 包 Shipityo 使用教程

    简介 Shipityo 是一款基于 npm 包管理器的工具,用于将您的 Web 应用程序发布到生产环境。它使用简单,可配置,且易于使用,提供了一种快速、可靠的方法来处理 Web 应用程序的构建和部署。

    5 年前
  • npm 包 gatsby-transformer-sharp 使用教程

    简介 gatsby-transformer-sharp 是 Gatsby 框架中一个通过 sharp 库处理图片的插件,可以将图片缩放、裁剪、优化等操作与 Gatsby 网站构建过程结合起来。

    5 年前
  • npm 包 kuworking-theme-blog-two 使用教程

    介绍 kuworking-theme-blog-two 是一个适用于个人博客的 React 主题。通过此包可以快速打造一个美观、易用的个人博客。 安装 使用 npm 安装: --- ------- -...

    5 年前
  • npm 包 kuworking-theme-blog-three 使用教程

    kuworking-theme-blog-three 是一个适用于博客网站的前端主题,可以通过 npm 包的方式引入并使用。本文将为大家详细介绍如何使用此主题,包括主题的安装、配置与使用,以及一些实用...

    5 年前
  • npm 包 kuworking-theme-blog-one 使用教程

    在现代化的 Web 开发中,前端框架已经成为重要部分。npm 是前端框架涌现的助推器之一。它为前端开发者提供了丰富的资源库,可以通过安装、集成和部署 npm 的包来大大提高 Web 应用程序的开发效率...

    5 年前
  • npm 包 kuworking-theme-blog-four 使用教程

    在前端开发中,经常需要使用外部的框架、库和样式,npm 是前端开发必不可少的工具之一。本文将介绍一个能够深度定制博客主题的 npm 包 kuworking-theme-blog-four,它能帮助你打...

    5 年前

相关推荐

    暂无文章