0

我是 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");
  });

它打印传递的参数。看来 sever.listen 终于被调用了。

我不知道如何获取传递的参数并将其设置为常量以进行不同的操作(例如日志路径)?

提前致谢。

4

1 回答 1

0
  1. 命令行参数是一个字符串数组,称为process.argv. 这从节点开始,然后是您的脚本,然后是其他参数。
  2. 为了解析实际的选项和标志,人们通常会使用帮助模块。在 npmjs.org 上搜索以找到您喜欢的或实现您自己的。
  3. 要存储该值,只需将其设置为module.exports.logPath = valueFromCommandLine;
于 2013-09-10T17:46:01.917 回答