如何在node.js中定义全局变量

时间:2018-11-14 20:47:01

标签: javascript node.js heroku

我有一个名为routeEnforcer.js的模块,其中包含多个功能和一个名为globalUser的对象变量。

这是routeEnforcer.js模块

我还有另一个名为routeHandler.js的模块,该模块处理应用程序采用的所有路由。我将routeEnforcer.globalUser设置为从数据库中检索到的用户对象。当我使用console.log显示值时,对象已正确设置。当我在另一个函数中显示相同的对象时,该对象为“未定义”。我花了几个小时试图弄清楚这一点。有人可以帮忙吗?

这是routeHandler.js模块,其中显示了所需的变量。

这是routeHandler.js模块,显示了用于设置并成功显示routeEnforcer.globalUser的登录后方法。

这是routeHandler.js模块,显示了属性视图的get方法,其中routeEnforcer.globalUser变量显示为“未定义”。

3 个答案:

答案 0 :(得分:0)

在全局对象中创建

例如:global.nameVar ='值'

答案 1 :(得分:0)

尝试像这样导出变量: module.exports = 'value' // or object or function or whatever you want 您可以再次调用。

答案 2 :(得分:0)

感谢您的帮助。我已经解决了我的问题。我忘记提及的一件事是该应用程序正在使用Angular.js框架。我的解决方案是将值传递到控制器类中的$ http.get方法中。