对于脚手架工具我们每天都在用,所以我们并不陌生,下面是一条常见的npm命令,在commandar中,分别对应命令、选项、参数等几个概念。
Commander 使用.option()方法来定义选项,同时可以附加选项的简介。每个选项可以定义一个短选项名称(-后面接单个字符)和一个长选项名称(--后面接一个或多个单词),使用逗号、空格或|分隔。
变长参数使用示例
这时number对应的值为数组1, 2, 3
通过.requiredOption()方法可以设置选项为必填。必填选项要么设有默认值,要么必须在命令行中输入,对应的属性字段在解析时必定会有赋值。该方法其余参数与.option()一致。
选项的参数可以通过自定义函数来处理,该函数接收两个参数,即用户新输入的参数值和当前已有的参数值(即上一次调用自定义处理函数后的返回值),返回新的选项参数值。
自定义函数适用场景包括** 参数类型转换 , 参数暂存 **,或者其他自定义处理的场景。
通过.command()或.addCommand()可以配置命令,有两种实现方式:为命令绑定处理函数,或者将命令单独写成一个可执行文件
comand适用于无特殊处理或者简单处理的情况
addComand有利于代码模块化
下面是vue-cli中serve的功能描述,我们通过简单的代码模拟实现
THE END