0
我在node.js中创建一个模块,我想访问正在加载模块的级别的变量。在node.js中访问我的模块的父var
var externalvar = 12345;
var mymodule = require('mymodule');
可能访问externalvar
里面的mymodule
?
我在node.js中创建一个模块,我想访问正在加载模块的级别的变量。在node.js中访问我的模块的父var
var externalvar = 12345;
var mymodule = require('mymodule');
可能访问externalvar
里面的mymodule
?
是的。
var externalvar = 12345;
var mymodule = require('mymodule')(externalvar);
内,您的模块:
module.exports = function(val) {
console.log(val); //12345
};
我觉得这是最好的,这样做的唯一途径。
externalvar = 12345;
或者
global.externalvar = 12345;
模块
module.exports = function() {
console.log(global.externalvar); //12345
};
内,但这种工作不
var externalvar = 12345;
console.log(global.externalvar); //undefined
存在其他的方式,这将是对用户透明?我不喜欢加载模块时用户必须添加var。 – EnZo 2014-09-19 13:16:59
@EnZo这是执行此操作的标准方法。为什么你不希望用户传递函数参数? – 2014-09-19 13:23:37
我的问题依然存在。因为nodejs不接受 var test = 1234;所以我的想法是通过这个对象来访问所有的变量: var mymodule = require('mymodule')(this); – EnZo 2014-09-19 13:48:45