Node.js需要脚本但不运行它

时间:2015-01-17 06:34:55

标签: node.js require

在Node.js中,当你做

var otherscript = require('otherscript');

它根据需要运行脚本

我想知道是否有办法在不运行脚本的情况下“需要”脚本,以便您可以在以后运行它。

有什么理由不是吗?

2 个答案:

答案 0 :(得分:4)

如果您可以编辑'otherscript'(没有其他人使用该脚本),那么您可以简单地将整个代码包含在函数中并将其添加到导出中。 例如:

otherscript:

module.exports = function(){
  //original code goes here
};

然后用作:

var otherscript = require('otherscript');
var obj = otherscript();

答案 1 :(得分:2)

当您需要文件或模块时,将缓存该文件/模块的返回。换句话说,它实际上只执行一次,后来对该文件/模块的require()的调用只会返回对完全相同的对象的引用。

一个常见的例子是Mongoose包,其中调用require('mongoose')将返回一个mongoose实例,你可以在其上调用connect()来连接数据库。在程序的不同部分再次调用require('mongoose')将返回具有相同数据库连接的相同实例。

相关问题