CLI

概述

Nest CLI是一个命令行界面工具,可帮助您初始化和开发应用程序。从架构项目到构建结构良好的应用程序,它可以在很多方面提供帮助。Nest CLI基于Angular Devkit包。

安装

使用 NPM 安装 CLI:

  1. $ npm install -g @nestjs/cli

基本工作流程

安装过程完成后,您应该能够通过nest可执行文件直接从命令行调用CLI命令。

  1. $ nest --help

贡献

您可以在此参与项目并为其做出贡献。

用法

为了提供出色的用户体验,CLI命令共享相同的命令模式。

  1. $ nest [command] [...options]

选项

每个命令都接受下面列出的一组选项:

  • —dry-run: 允许模拟命令执行,以验证它将如何影响您的工作目录
  • —no-spec: 允许关闭spec文件的生成(仅适用于generate命令)
  • —flat: 允许关闭专用目录的生成(仅适用于generate命令)

new (alias: n)

new 命令生成基于 typescript-starter上的Nest项目以及安装所需的软件包。CLI将询问您缺少的信息 - 应用程序名称(如果未指定)以及要用于安装依赖项的程序包管理器。

  1. $ nest new my-awesome-app

generate (alias: g)

generate命令用于生成Nest体系结构组件。

Option Description Required Default value
schematic 下面列表中的schematic名称 true N/A
name 生成的Nest体系结构组件的名称 false N/A
path 生成Nest体系结构组件的路径 false src

可用架构组件的列表:

  • class (alias: cl)
  • controller (alias: co)
  • decorator (alias: d)
  • filter (alias: f)
  • gateway (alias: ga)
  • guard (alias: gu)
  • interface (alias: -)
  • interceptor (alias: in)
  • library (alias: lib)
  • middleware (alias: mi)
  • module (alias: mo)
  • pipe (alias: pi)
  • provider (alias: pr)
  • resolver (alias: r)
  • service (alias: s)

示例用法:

  1. $ nest new my-awesome-app
  2. OR
  3. $ nest n my-awesome-app

generate (alias: g)

generate 命令生成嵌套体系结构组件。

Option Description Required Default value
schematic 下面列表中的示意图名称。 true N/A
name generateNest架构组件的名称 true N/A
path generateNest架构组件的路径 false src

可用体系结构组件的列表:

  • class (alias: cl)

  • controller (alias: co)

  • decorator (alias: d)

  • exception (alias: e)

  • filter (alias: f)

  • gateway (alias: ga)

  • guard (alias: gu)

  • interceptor (alias: i)

  • middleware (alias: mi)

  • module (alias: mo)

  • pipe (alias: pi)

  • provider (alias: pr)

  • service (alias: s)

用法示例:

  1. $ nest generate service users
  2. OR
  3. $ nest g s users

info (alias: i)

info 命令将显示您的项目信息

  1. $ nest info
  2. _ _ _ ___ _____ _____ _ _____
  3. | \ | | | | |_ |/ ___|/ __ \| | |_ _|
  4. | \| | ___ ___ | |_ | |\ `--. | / \/| | | |
  5. | . ` | / _ \/ __|| __| | | `--. \| | | | | |
  6. | |\ || __/\__ \| |_ /\__/ //\__/ /| \__/\| |_____| |_
  7. \_| \_/ \___||___/ \__|\____/ \____/ \____/\_____/\___/
  8. [System Information]
  9. OS Version : macOS High Sierra
  10. NodeJS Version : v8.9.0
  11. YARN Version : 1.5.1
  12. [Nest Information]
  13. microservices version : 5.0.0
  14. websockets version : 5.0.0
  15. testing version : 5.0.0
  16. common version : 5.0.0
  17. core version : 5.0.0

译者署名

用户名 头像 职能 签名
@zuohuadong CLI - 图1 翻译 专注于 caddy 和 nest,@zuohuadong at Github
@Drixn CLI - 图2 翻译 专注于 nginx 和 C++,@Drixn
@franken133 CLI - 图3 翻译 专注于 java 和 nest,@franken133