我发现你可以在node.js中执行get函数,如此
Object.defineProperty(exports, "g_myvar", {
get: function() { return g_myvar; }
});
所以也许你可以做一个像这样的集合函数
Object.defineProperty(exports, "g_myvar", {
set: function(val) { g_myvar = val; }
});
但两个导出函数都具有相同的名称,因此无法正常工作。我想我可以使用不同名称的函数,但这意味着将所有变量赋值更改为函数调用。
答案 0 :(得分:1)
只需将它们组合起来:
Object.defineProperty(exports, "g_myvar", {
get: function() { return g_myvar; },
set: function(val) { g_myvar = val; }
});
答案 1 :(得分:0)
在您的模块中
module.exports = {
mySetter: function (value) {...},
myGetter: function () {return ...}
};
并且你可以在任何地方使用你的模块,如
var myModule = require('my-module);
myModule.mySetter(...)
myModule.myGetter(...)
依旧......
或者我可能没有理解这个问题。