五、搭建自己的脚手架工具

94 阅读1分钟

开发脚手架工具

  • 创建index.js

    • 可以编写一些简单的代码
  • 创建package.json npm init -y

  • 创建coderwhy命令

    • 入口文件中,添加如下指令(shebang也称为hashbang)

    • 修改package.json

    {
      "name": "07_learning_cli",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "bin": {
        "why": "index.js"
      },
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [],
      "author": "",
      "license": "ISC",
      "dependencies": {
        "commander": "^9.4.0"
      }
    }
    
    • npm link

Commander的使用

  • 定义版本号
//查看版本号
program.version(require("./package.json").version);

//增加自己的options
program.option("-w --why", "a why cli");

//解析终端指令
program.parse(process.argv);
  • 添加其他选项、修改帮助选项

创建项目指令

创建项目指令的思路如下:

  • 创建解析create指令

  • 通过download-git-repo从代码仓库中下载模板

  • 进入目录,并且执行 npm install命令

  • 执行 npm run serve命令

  • 打开浏览器

创建命令 – 下载代码

image.png

Git地址配置 – 终端执行命令

image.png

image.png

创建添加组件-页面-vuex命令

  • 创建添加组件-页面-vuex命令的思路:

    • 创建addcpn、addpage、addstore的命令

    • 准备好对应的ejs模块(component.vue.ejs, vue-router.js.ejs, vue-store.js.ejs, vue-types.js.ejs

    • 封装编译ejs模块的函数

    • 封装将编译后的内容,写入文件的函数

    • 将上面封装的所有代码放到一起的函数

创建指令的代码

image.png

编译ejs – 写入文件 – ejs到文件

image.png

image.png

ejs到文件转化函数以及调用

image.png

image.png

发布项目

  • 注册npm账号:

  • 在命令行登录:

    npm login

  • 修改package.json

  • 发布到npm registry上

    npm publish

  • 更新仓库:

    • 1.修改版本号(最好符合semver规范)

    • 2.重新发布

  • 删除发布的包:

    npm unpublish

  • 让发布的包过期:

    npm deprecate