一、Yeoman简介
1、定义:用于创造现代化web应用的脚手架工具
2、作用/优点:Yeoman更像一个脚手架运行平台,搭配不同的generator实现不同的应用、创建任何类型的项目。也就是我们可以创建自己的generator,实现定制化的前端脚手架。
不同的generator实现不同的应用:
- webapp-generator -> web app structure
- chrome-extension generator
- chrom-extension structure
- node generator -> node module structure
3、缺点:过于通用,有些人更喜欢vue-cli这种专注性的脚手架。
二、基本使用
1、Yeoman是基于nodejs开发的模块,因此要全局安装,可以用node也可以用yarn,此处用yarn
- 安装: yarn global add yo
- 检测是否安装成功:yo --version 如果提示不是内部命令可用yarn global bin运行之后设置环境目录即可,或者npm i yo -g 重新安装尝试
2、找到合适的Generator进行全局安装
- 安装过后就可以使用yo去创建项目,但是需要配合generator实现,如果我们要生产node模块,使用generator-node配合,也需要全局安装 yarn global add generator-node 或 npm i generator-node -g
3、进入项目目录,通过Yo运行对应的Generator
- cd 项目目录
- 使用yo运行generator-node的生成器自动创建全新的node module,命令: yo node
a.提出的问题就根据需要填写即可
b.脚手架流程结束得到基础的项目结构和基础的项目代码
三、创建特定文件
当不需要创建完整的项目结构,在已有的结构之上创建特有的文件,比如read.me eslint配置文件,这些文件都有基础代码,可以通过生成器自动生成提高效率就可以通过yoeman的sub generator去实现
1、举例:node-generator下面的子生成器生成cli应用需要的文件
- yo node:cli (注意generator通常不用写,格式:yo 生成器:自生成器的命令使用子集生成器)
- 根据需要选择提示
- 根据前面命令生成的本地模块作为全局的命令行模块使用
- npm link
- aa --help
- 不是每个generator都有subGenerator的,要自己去官网查看
四、Yeoman使用总结
- 明确需求
- 找到合适的Generator
- 全局范围安装找到的Generator
- 通过Yo运行对应的Generator
- 通过命令行交互填写选项
- 生成你需要的项目结构