Node.js 不能有多个包含module.exports的模块

Node.js 不能有多个包含module.exports的模块,node.js,Node.js,我有多个模块,我做到了: //模块1.js module.exports = function() { ... } //module2.js module.exports = function() { ... } 在app.js中 m1 = require('./module1') m2 = require('./module2') m1.method() m2.method() 我有打字错误。然后我在两个模块中导出了方法 除了显式导出单个方法外,是否有其他方法可以导出多个模块

我有多个模块,我做到了:

//模块1.js

module.exports = function() {
  ...
}
//module2.js

module.exports = function() {
  ...
}
在app.js中

m1 = require('./module1')
m2 = require('./module2')

m1.method()
m2.method()
我有打字错误。然后我在两个模块中导出了方法


除了显式导出单个方法外,是否有其他方法可以导出多个模块

看起来您试图两次传递
require()
未定义的
变量。require()需要将字符串作为参数来确定要加载的模块

如果其他两个模块与app.js位于同一目录中,请重试

m1 = require('./module1')
m2 = require('./module2')

编辑: 你忘了做的是

m1 = new require('./module1')()
m2 = new require('./module2')()
假设您的模块看起来像:

module.exports = function() {
  this.method = function(){}
}
就我个人而言,我只会从模块返回一个对象文字,而不是函数:

module.exports = {
  method1: function(){},
  method2: function(){}
}
然后我可以调用模块导出中的方法,如下所示:

m1 = require('./module1');
m1.method1();

抱歉…我就是这么做的…我只是在发帖问题中打错了…好吧…我会尝试这个建议并更新…谢谢…那么你是说允许多个module.export?