Nodejs库/模块用于开发交互式CLI应用程序?

Bre*_*ett 11 interactive command-line-interface node.js

谷歌搜索和搜索stackoverflow,但我没有遇到任何事情.我想用节点开发一个交互式shell,并想知道最好的方法.是否有人可以推荐使用的图书馆?

我已经编写了一个库,现在需要一个CLI接口来与它进行交互,有两种方法:使用参数运行应用程序,或者通过交互式shell.例如

$ node myapp doSomething
App Result: I did something
$ node myapp cli
Entering interactive mode...
myapp>
myapp> doSomething
App Result: I did something
myapp>
Run Code Online (Sandbox Code Playgroud)

有什么建议?

vin*_*ayr 13

我猜commander.js就是你要找的.

https://github.com/visionmedia/commander.js

http://oscar-mejia.com/blog/how-to-create-a-command-line-program-with-nodejs/

另请查看REPL http://nodejs.org/api/repl.html

  • 询问者似乎是一个不错的选择,有验证和很好的提示:https://github.com/SBoudrias/Inquirer.js/ (2认同)

Alj*_*yer 5

Vorpal是一个完全符合问题描述的框架,尽管他们称之为" 沉浸式cli ".

var vorpal = require('vorpal')();

vorpal
  .command('doSomething')
  .action(function (args, cb){
    this.log('App Result: I did something');
    cb();
  });

vorpal
  .delimiter('myapp>')
  .show();
Run Code Online (Sandbox Code Playgroud)