我试图实现的是创建一个包含多个功能的模块。
module.js:
module.exports = function(firstParam) { console.log("You did it"); },
module.exports = function(secondParam) { console.log("Yes you did it"); },
// This may contain more functions
main.js:
var foo = require('module.js')(firstParam);
var bar = require('module.js')(secondParam);
我的问题是,firstParam是一个对象类型和secondParam是一个URL字符串,但当我有它总是抱怨类型是错误的。
我如何声明多个模块。在这种情况下出口?
你可以这样做:
module.exports = {
method: function() {},
otherMethod: function() {},
};
或者是:
exports.method = function() {};
exports.otherMethod = function() {};
然后在调用脚本中:
const myModule = require('./myModule.js');
const method = myModule.method;
const otherMethod = myModule.otherMethod;
// OR:
const {method, otherMethod} = require('./myModule.js');
这只是供我参考,因为我想要达到的目的可以通过这个来实现。
在module.js中
我们可以这样做
module.exports = function ( firstArg, secondArg ) {
function firstFunction ( ) { ... }
function secondFunction ( ) { ... }
function thirdFunction ( ) { ... }
return { firstFunction: firstFunction, secondFunction: secondFunction,
thirdFunction: thirdFunction };
}
在main.js中
var name = require('module')(firstArg, secondArg);