2016-07-15 206 views
0

奇怪的问题,但目前我有一个脚本,我需要一个参数的终端运行。通常我会通过执行node script.js param来运行此操作,但现在我想在Express服务器加载时使用JS文件中的参数运行此脚本。从文件内执行节点脚本

参数被采用并定义在文件中是这样的:

var param = process.argv[process.argv.length - 1];

什么是我的节点的应用程序使这个文件访问其他地方并运行它的最佳做法?

+0

'require(“script.js”)'其他文件的文件? – Lekhnath

回答

1

如果我理解你下面应该正常工作。

的script.js

module.exports = function (params) { 

console.log(params); 

} 

main.js

var param = process.argv[process.argv.length - 1]; 

require('./script')(param); 
1

如果您需要从其他来源获得参数是需要的脚本时,你可以,如果脚本进行验证直接从命令行运行或需要:

if (require.main === module) { 
    var param = process.argv[process.argv.length - 1]; 
} else { 
    var param = // get from other source. 
}