Nodejs和Expressjs:全局variables中的常量

定义于:util / constant.js

module.exports = { userTypeAdmin: 0, userTypeUser: 1 }; 

在app.js中只需要一次

 ... global.constant = require('./util/constant'); ... 

多次使用

在:route / index.js

 console.log(constant.userTypeAdmin); // Show 0 

在:route / user.js

 console.log(constant.userTypeUser); // Show 1 

题:

我必须删除app.jsglobal.constant = require('./util/constant');

并添加: const constant = require('../util/constant');

路线/ index.js路线/ user.js ? 或者没关系我是怎么做的?

 1. const constant = require('../util/constant'); 2. global.constant = require('./util/constant'); 

只有这些差异,

声明1要求您将constant包导入到任何您想要使用它的地方。

语句2使全局可用的constant包可以在不导入的情况下访问它。

在声明2中,如果您修改了constant内的任何属性,它将反映整个应用程序。

So,make sure,you are using global only when you want to share something across the application.

如果你想全局共享数据,而不希望这个应该改变,那么用const关键字去除每个原始variables。在这种情况下,使const对象不会帮助你。 无论哪种情况,您都可以排除它。