比如,我们要创建一个create指令,用来创建新项目,我们就可以这么写:
program.command('create <project> [other...]') // command 用来创建指令 <project>是参数 [other...]是其他的参数
.alias('crt') // alias 用来起别名
.description('创建项目') // description 用来描述作用,会展示在--help的指令中
.action((project,args)=>{ // action 用来写这个指令具体的操作逻辑 回调中的参数是<project> [other...]
console.log(project)
console.log(args)
})

这样,我们就自定义了一个create指令,我们可以试一下:

执行mycli create xxx指令,可以打印出参数,说明指令写的没问题。
当然,我们执行-- help指令,能够看到我们新增的create指令,如下图:

【注意】action()方法中的回调函数是真正用来写命令行执行逻辑代码的地方。但是,这一块的代码会越写越多,比如要做命令行的问答交互、文字的颜色区分、下载代码、打印提示信息等等,代码耦合太严重,不便于后期维护,因此,我们在下一章要进行模块拆分。
Node自定义脚手架:新增create指令
831

被折叠的 条评论
为什么被折叠?



