[英]Node modules usage error
我需要导出两个函数并为两个函数获取参数arg1的Ive节点模块,我尝试以下操作出现错误,我在这里做错了什么?
UPDATE
Ive模块内部的两种方法
1. I need to expose it outside and to call it explicit from other
module with parameter
喜欢
require('./controller/module')(functionName1)(parameter);
目前尚不清楚您想做什么,但我认为您想要这样的事情:
module.exports = function (arg1) {
return {
server: function (params1) {
//do something with arg1 and params1
},
proc: function (params2) {
//do something with arg1 and params2
}
}
};
并使用模块:
var arg1 = 'whatever'
var myMod = require('myMod')(arg1);
myMod.server();
myMod.proc();
选项2
如果我看看你的新例子
require('./controller/module')(functionName1)(parameter);
您需要导出一个函数的模块,该函数返回另一个函数( 高阶函数 )。
因此,例如:
module.exports = function(functionName1) {
if(functionName1 === 'server'){
return function server(parameter){
//do your stuff here
}
}
if(functionName1 === 'proc'){
return function proc(parameter){
//do your stuff here
}
}
};
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.