Node.js 不能有多个包含module.exports的模块
我有多个模块,我做到了: //模块1.jsNode.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() 我有打字错误。然后我在两个模块中导出了方法 除了显式导出单个方法外,是否有其他方法可以导出多个模块
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?