我可以使用一个require语句加载多个文件吗?
也许这个问题有点愚蠢,但是可以用一个require语句加载多个.js文件吗?像这样:
var mylib = require('./lib/mylibfiles');
并使用:
mylib.foo(); //return "hello from one"mylib.bar(): //return "hello from two"
在文件夹mylibfiles中将有两个文件:
exports.foo= function(){return "hello from one";}
exports.bar= function(){return "hello from two";}
我当时在想将package.json放到文件夹中,以说加载所有文件,但是我不知道如何。我在想的另一个方法是让index.js再次导出所有内容,但我将重复工作。
谢谢!!
PD:我正在Windows 7机器上使用Node.js v0.611
回答:
首先使用require
不会重复任何东西。它加载模块并对其进行
,因此require
再次调用将从内存中获取它(因此您可以在不与模块源代码交互的情况下即时修改模块-
有时这是理想的,例如,当您想在模块内部存储数据库连接时)。
也package.json
不会加载任何内容,也不会与您的应用进行交互。仅用于npm
。
现在,您不能一次需要多个模块。例如将发生,如果两者是什么One.js
,并Two.js
具有相同的名称定义的函数?还有更多的问题。
但是您可以做的是编写附加文件,modules.js
并显示以下内容
module.exports = { one : require('./one.js'),
two : require('./two.js'),
/* some other modules you want */
}
然后您可以简单地使用
var modules = require('./modules.js');modules.one.foo();
modules.two.bar();
以上是 我可以使用一个require语句加载多个文件吗? 的全部内容, 来源链接: utcz.com/qa/407079.html