关于commander
什么是commander?
这是一个帮助我们开发nodejs命令行的工具🔧。
这个工具将开发者从繁琐的命令解析中解放出来,使开发者更专注于开发命令所实现的功能,极大地提高了开发效率。
本来是为了开发自定义脚手架看的commander。
后来意外地发现看了commander以后,之前很多npm包的help内容理解起来比以前更轻松了。
也算意外之喜吧。
命令行开发环境搭建
目录结构
首先 保证电脑中安装了nodejs和npm,在项目中安装了commander
然后 创建包目录
1 | mkdir test-cli |
得到的项目结构如下:
1 | - test-cli |
调试
全局命令方式
给package.json的bin字段指定命令行实现文件位置
1 | { |
index.js文件开头加上
1 | #!/usr/bin/env node |
执行
1 | npm link |
之后可以在控制台直接使用test-cli命令
调试完后记得执行,把软连接删掉
1 | npm unlink |
脚本调试方式
直接在控制台执行
1 | node index.js [params] |
快速开发总结
commander开发主要分为选项(option)和指令(command)两类。
两者有相似的地方,但也有区别。个人理解指令开发用于更复杂的场景。
开发模版:
1 | #!/usr/bin/env node |
选项开发
1 | program |
指令开发
1 | program |