导出命令行参数并将其设置为模块的常量

时间:2013-09-10 16:18:31

标签: javascript node.js export

我是node.js的新手。

我想在启动服务器时从命令行获取argv,然后我想将其设置为模块的常量。

例如,我想从命令行界定我的日志文件路径:

node server --logFilePath="LOGPATH";

想要像下面这样使用:

在db.js中,rest.js如下:

function writeIntoLog(message, LOGPATH){
        //
}

我尝试过:

在server.js中的

我正在导出argv,如下所示:

module.exports.argv = argv;

在db.js中包含var server = require('server.js');

console.log(server.argv)

但如果我在服务器启动块中调用它,如下所示:

server.listen(argv, function() {
        console.log(argv);
        console.log("started server");
  });

它打印传递的参数。看起来很严重。最后调用了。

我无法理解如何获取传递的argiments并将其设置为Constant for different operation(例如log path)?

提前致谢。

1 个答案:

答案 0 :(得分:0)

  1. 命令行参数是一个名为process.argv的字符串数组。这从节点开始,然后是脚本,然后是其他参数。
  2. 要解析实际的选项和标志,通常人们会使用辅助模块。搜索npmjs.org以找到您喜欢的或实现自己的。
  3. 要存储该值,只需将其设置为module.exports.logPath = valueFromCommandLine;
  4. 即可