我想为使用Node.js和CoffeeScript编写的应用程序声明全局变量。所以我将它声明在一个公共文件中,在编译后与两个应用程序连接。在那个文件中,我有例如:使用node.js和CoffeeScript访问全局变量
root = exports ? this
root.myVariable = 300
所以我的第一个应用程序是一个HTML的。当我尝试访问此变量时,例如通过
console.log myVariable
它没有问题。但是我的其他应用程序是由node命令激活的服务器应用程序,我无法在该应用程序中访问该变量。我想:
console.log root.myVariable
console.log myVariable
随着第一线我越来越“未定义”打印(所以它看起来该根被定义),并用第二个,我得到的ReferenceError - MYVARIABLE是未定义的。
那么我怎样才能访问这个变量?
这里是在Javascript的输出码我搞定了,我想这可能是有益的:
(function() {
var root, _ref;
root = (_ref = typeof module !== "undefined" && module !== null ? module.exports : void 0) != null ? _ref : this;
root.myVariable = 300;
}).call(this);
(function() {
console.log(root.myVariable);
console.log(myVariable);
}).call(this);
你想在'node.js'声明一个全局(一般可变)变量,或者你想声明一个常量(不可变)变量,可以从客户端和服务器js访问? – 2013-03-19 11:15:01
@ leonid-beschastny嗯,实际上它应该是一个从这两个应用程序读取的常量值。 – krajol 2013-03-19 11:18:46