背景
整合前端团队代码规范, 以及统一整体架构
使用库
-
本文借鉴vue-cli思路,用到的库有:
- commander.js,可以自动的解析命令和参数,用于处理用户输入的命令。
- download-git-repo,下载并提取 git 仓库,用于下载项目模板。
- inquirer.js,通用的命令行用户界面集合,用于和用户进行交互。
- handlebars.js,模板引擎,将用户提交的信息动态填充到文件中。
- ora,下载过程久的话,可以用于显示下载中的动画效果。
- chalk,可以给终端的字体加上颜色。
- log-symbols,可以在终端上显示出 √ 或 × 等的图标。
代码实现
- 下载依赖
npm init -y
npm i commander download-git-repo inquirer handlebars ora chalk log-symbols -S
- package.json
{
"name": "lcq-cli",
"version": "1.0.0",
"description": "lcq-cli",
"bin": {
"lcq": "index.js"
},
...
}
- index.js
const fs = require('fs');
const program = require('commander');
const download = require('download-git-repo');
const handlebars = require('handlebars');
const inquirer