- 执行
yarn init创建package.json文件
- 定义package.json中
name字段的名称,作为后续创建的cli的名字 假设cli的名称为my-react-cli
- 安装 yeoman
yarn add -g yo
- 安装yeoman generator
yarn add -g generator-generator
- 通过yo generator cli创建自定义generator目录
yo generator
- 在创建好的目录中的index.js中编写cli工具代码
- 在app同级的目录中创建tempaltes文件夹。
- 将项目的工程配置及项目基础代码复制到tempaltes文件夹内。
- 在app.js中编写如下代码
const Generator = require('yeoman-generator');
module.export = class extends Generator {
prompting() {
return this.prompt([{
type: 'input',
name: 'projectName',
message: 'please input you project name',
default: this.appName,
}])
.then((anwser) => {
this.answsers = answsers;
})
}
write() {
this.fs.copyTpl(
this.templatePath('index.html'),
this.destinatiopath('index.html'),
this.answsers,
)
}
}
-
在自定义generator项目中,执行
npm link -
在创建项目的目标文件下打开命令行执行
yo my-react-cli,即可基于yo my-react-cli创建项目。