2013-08-19 54 views
0

我有几个像应用程序键这样的变量,我需要访问所有文件,我需要有类似于初始化程序的东西,它将在一个地方初始化所有常量,并且应该能够跨越应用程序?关于如何在节点中实现这个初始化器的任何建议。我不想要求文件我如何访问所有文件中的全局变量

回答

2

做,防止全局配置意外损坏的理想方式,

applicationConstants.js

module.exports = { app_host : "example.com" , app_port:8080} 
Object.freeze(module.exports); // ensure protection against modification 

app.js

var appConstants = require('path_to_applicationConstants.js'); 
Object.defineProperty(global, "appConstants", { 
    enumerable: false, 
    configurable: false, 
    writable: false, 
    value: appConstants 
}); 
+1

冻结模块导出时,也可以使用深度冻结模块递归执行复杂对象:https://github.com/substack/deep-freeze – Slappy

-1

看看这个代码。它将清除画面在你的心中:

public class MyConstants { 

    public static final String PROFILE_ID = "profile_id"; 

    public static final String EMAIL_ID = "email_id"; 

} 

,如果你想在你的应用程序存储寿命一些变量,那么你应该使用共享应用程序的首选项。

+1

this java?我在问如何在节点 – suman

+0

中实现对不起,我的错误此解决方案是为Java。 –