Program-cli文档
项目需求:
- 实现一个 cli 小工具用于快速创建后端项目。
项目难点:
- 多工具的集成(根据用户选择的语言去安装不同的代码检测工具jslint or tslint,并实现交互)
- 多语言配置文件的交互选择
- nodejs转typescript
需要用到的相关模块
commander.js,可以自动的解析命令和参数,用于处理用户输入的命令。
download-git-repo,下载并提取 git 仓库,用于下载项目模板。
Inquirer.js,通用的命令行用户界面集合,用于和用户进行交互。
handlebars.js,模板引擎,将用户提交的信息动态填充到文件中。(一版本暂时未用到)
ora,下载过程久的话,可以用于显示下载中的动画效果。(暂时未用到)
chalk,可以给终端的字体加上颜色。
项目实现流程
1.下载安装nvm(node版本管理工具)
2.下载nodejs版本(建议下载v10.15.3)
3.新建文件夹,切换到文件夹中并初始化文件夹(npm init -y),生成package.json文件
4.在package.json文件中加入bin命令(命令自己随便定义,加入命令后在终端输入bin命令会自动执行bin后对应的文件)
5.中端输入npm install -g
注意点
- 当你修改bin命令的名称时需要再次npm install -g,否则命令将不会生效
- 关于npm install -g的作用
关于npm install -g的解释:
我们在写命令行工具的时候,需要指定一个可执行文件。在package.json中,
bin字段用来映射命令名和可执行文件。在通过npm install -g全局安装的时候,npm会symlink可执行文件到prefix/bin文件夹。
如果通