我在尝试导出具有两个函数的模块时遇到Nodejs(带快速)的问题,结构如下
exports.class1 = function(){
return = {
method1 : function(arg1, arg2){
...........
},
method2 : function (arg2, arg3, arg4){
..........
}
};
}
此模块保存为module1.js 当导入并按如下方式使用时会发生错误
var module1 = require('./module1');
module1.class1.method1(arg1, arg2);
答案 0 :(得分:6)
您的class1
应该包含类似下面的代码
exports.class1 = function(){
return {
method1 : function(arg1, arg2){
console.log(arg1,arg2)
},
method2 : function (arg2, arg3, arg4){
console.log(arg2,arg3,arg4);
}
};
}
你必须像下面这样称呼它
module1.class1().method1(arg1, arg2);//because class1 is a function
更好的方法来导出对象
exports.class1 = {
method1 : function(arg1, arg2){
console.log(arg1,arg2)
},
method2 : function (arg2, arg3, arg4){
console.log(arg2,arg3,arg4);
}
}
你可以称之为
module1.class1.method1(arg1, arg2); //because here class1 is an object