node原生通过process.argv
可以获取到执行的指令
使用commander
npm i commander
// 使用commander提供的program模块可以创建自定义的指令
const {program} = require('commander')
// 新增一条-f 和 --framwork 指令 <framwork>表示行参
program.option('-f --framwork <framwork>','设置框架')
program.parse(process.argv)
//commander内置了--help指令 此时输入mycli --help
Options:
-f --framwork <framwork> 设置框架
-h, --help display help for command
// 创建一个create指令
program
.command('create <projectName> [other...]') // 指令名称 参数 更多参数定义
.alias('c') //指令别名
.description('创建项目') // 指令描述
.action((name,args)=>{ // 执行后的回调函数
console.log(name);
console.log(args);
})
// 此时运行 mycli create myproject xx xxx
$ mycli create myproject xx xxx
myproject
[ 'xx', 'xxx' ]
// 通过command添加的指令会自动添加到 -help 中
$ mycli -h
Usage: cli [options] [command]
Options:
-f --framwork <framwork> 设置框架
-h, --help display help for command
Commands:
create|c <projectName> [other...] 创建项目
help [command] display help for command
网友评论