Vite + TypeScript + Node 开发一个简易脚手架

前言

  • 使用 Vite + TypeScript + Node 开发一个使多个命令为一个命令的脚手架
  • 当然这个题材你也可以使用 bat 实现

思路

  • 创建一个 node 项目,开发一系列逻辑,发布到线上,需要的时候全局安装使用

初始化项目

  • 选择 自定义预选 > cli
npm create mine@latest

运行项目

npm start
  • 新开一个终端,运行以下命令,关联当前脚手架到全局
cd dist && npm link
  • 查看效果
  • 运行结果为 1.0.0,则项目运行成功
cli -v
  • cli: 自定义命令,在 package.json 中的 bin 属性定义定义
  • package.json
{
  "bin": {
    "cli": "bin/project-template-cli.js"
  }
}
  • -v: commander 依赖内置配置项,可覆盖参数,在 src/commander/index.ts 中定义,如果需要自定义参数,可以使用 option 方法
program
  .usage('[commands] [options]')
  .version(version, '-v, --version', '输出版本号')
  .option('-d, --debug', '开启调试模式')

实现自己的逻辑

  • src/commander/index.ts 中定义自己的命令
  • src/commander/actions.ts 中实现自己的逻辑
  • 这里有一个默认命令 cli demo,可以参考
  • 如果想实现使多个命令为一个命令的逻辑,代码太多,可以参考 mine-auto-cli 的源码

发布

  • 之前关联到全局只是本地,没有放到线上,换台电脑之后则无法使用,因此我们要发布到线上
  • 这里发布到 npm 官网平台,当然你也可以发布到其它平台
  • 首先需要注册一个 npm 账号
  • 然后在本地 npm 登录
npm login
  • 最后在推送到线上
npm publish
  • 发布成功后,就可以在其它电脑使用了
  • 这里使用你自己的包名
npm i -g mine-auto-cli
auto -v

其它

  • 如何有问题,可以提 issue
  • cli 项目模板源码

你可能感兴趣的:(NodeJs,TypeScript,typescript,javascript,前端,vite,nodej)