v-cli第一部分

79 阅读1分钟
使用到的包:
1. `util.promisify`是在`node.js 8.x`版本中新增的一个工具,用于将老式的`Error first callback`转换为`Promise`对象
2. Chalk 控制台输出着色Nodejs3. Inquirer Node命令行交互工具

   [Inquirer入门](https://www.jianshu.com/p/bdb825bb4ef7)  
   [Inquirer](https://blog.csdn.net/CamilleZJ/article/details/121268346)
  4. ora
  一个优雅的 Node.js 终端加载动画效果
  5. figlet 一个酷炫的文字工具
  1. create命令

1)提供模版供选择

2)拉取选择的模板 a. 询问用户拉取哪个模板 b. 如果有不同版本,应该拉取那份版本 c. 当前的模板里面,是不是一个复杂的模板; 有自定义化的东西 如果有的话,我们就需要编译完成之后再下载 如果没有,我们就直接下载。

3)下载模板的内容到我们定义的目录 a. 做一个下载缓存 b. 先去看看缓存里面有没有,有的话直接复制过来,如果没有的话,我们再去git拉代码。

package.json

{
  "name": "v-cli",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "bin": {
    "v-cli": "./bin/www.js"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "axios": "^0.27.2",
    "chalk": "^4.1.2",
    "commander": "^9.3.0", //解析用户输入的参数,处理用户参数,执行了对应的action
    "figlet": "^1.5.2",
    "inquirer": "^8.2.4",
    "ora": "^5.4.1"
  }
}