node.js 的argv包使用问题

问题描述:

参考《七天学会node.js》中的node-echo的例子(第二章的工程目录)。
1. 我使用命令:npm install argv安装了argv包;
2. 然后,按照里面提示的代码,
/* bin/node-echo */
var argv = require('argv'),
echo = require('../lib/echo');
console.log(echo(argv.join(' ')));
3. 第三,运行命令
node /home/duqi/node/node-echo/bin/node-echo.js -o hello word du qi

问题表现:

解决问题的过程

(1)我认为是argv模块中join方法不存在;
(2)通过查询资料,找到这个资料:argv的包解释
在这个文章里,有提到
var options = { name: 'option', short: 'o', type: 'string', description: 'Defines an option for your script', example: "'script --opiton=value' or 'script -o value'" });
但是对这个options的含义不太理解
然后执行下面的这条语句
argv.option(options).run()
最后运行上述的命令,结果是
{ targets: [ 'word', 'du', 'qi' ], options: { option: 'hello' } }
这个结果不太理解~
(3)我又通过这篇文章查到process模块,然后写出下面的代码
var echo = require('../lib/echo'); var args = process.argv; var res = args[3]+' '; for(var i=4;i<args.length;i++){ res += args[i] + ' '; } console.log(echo(res));

问题最后解决了,但是,对argv模块的用法没有搞清楚,希望各位给我一点建议,非常感谢啦

查看回复