Yeoman 是一个通用的脚手架系统,允许创建任何类型的应用程序。它允许快速开始新的项目,并简化现有项目的维护。
Yeoman 与语言无关。它可以使用任何语言生成项目(Web、Java、Python、C# 等)。
Yeoman 本身不做出任何决定。每个决定都是由生成器做出的,生成器基本上是 Yeoman 环境中的插件。有大量公开可用的生成器,并且可以轻松地创建一个新的生成器来匹配任何工作流程。Yeoman 始终是满足您的脚手架需求的正确选择。
以下是一些常见用例
- 快速创建一个新项目
- 创建项目的新的部分,例如带有单元测试的新控制器
- 创建模块或包
- 引导新的服务
- 强制执行标准、最佳实践和风格指南
- 通过让用户能够使用示例应用程序入门来推广新项目
- 等等
入门
yo
是 Yeoman 命令行实用程序,允许使用脚手架模板(称为生成器)创建项目。Yo 和使用的生成器是使用npm安装的。
安装 yo 和一些生成器
首先使用npm
安装yo
npm install -g yo
然后安装所需的生成器。生成器是名为generator-XYZ
的 npm 包。在我们的网站上搜索它们,或者在运行yo
时选择“安装生成器”菜单选项。要安装webapp
生成器
npm install -g generator-webapp
新的 Node 和 npm 用户可能会遇到权限问题。这些问题在安装期间以EACCESS
错误的形式出现。如果发生这种情况,请参考npm 指南以修复权限。
npm 是Node.js的包管理器,并与之捆绑在一起。
在 Windows 上,我们建议使用更好的命令行工具,例如cmder
或 PowerShell 以改善体验。
基本脚手架
我们将在下面的示例中使用generator-webapp
。将webapp
替换为您生成器的名称以获得相同的结果。
要为新项目创建脚手架,请运行
yo webapp
大多数生成器会询问一系列问题以自定义新项目。要查看可用的选项,请使用help
命令
yo webapp --help
许多生成器依赖于构建系统(如Grunt或Gulp)和包管理器(如 npm 和 Bower)。请务必访问生成器的站点以了解如何运行和维护新应用程序。通过运行以下命令可以轻松访问生成器的主页:
npm home generator-webapp
为复杂框架创建脚手架的生成器可能会提供其他生成器来为项目的较小部分创建脚手架。这些生成器通常称为子生成器,并且可以访问为generator:sub-generator
。
以generator-angular
为例。生成完整的 Angular 应用程序后,可以添加其他功能。要向项目添加新控制器,请运行控制器子生成器
yo angular:controller MyNewController
其他 yo 命令
除了上一节中介绍的基本内容外,yo
也是一个完全交互式的工具。只需在终端中键入yo
即可提供一个选项列表,以管理与生成器相关的所有内容:运行、更新、安装、帮助和其他实用程序。
Yo 还提供以下命令。
yo --help
访问完整帮助屏幕yo --generators
列出所有已安装的生成器yo --version
获取版本
故障排除
大多数问题可以通过运行以下命令找到:
yo doctor
doctor
命令将诊断并提供解决最常见问题的步骤。
创建生成器
请参阅创作。