我有一个 globals.js 文件,需要可以跨应用程序中的多个文件访问。
这些全局变量是相互依赖的,我想设置我的数据文件,以便参数彼此相关。我正在尝试以下操作:
const config = {
"canvas": {
"width": 600,
},
"shape": {
"width": function() {
return config.canvas.width*0.9;
};
},
};
module.exports = config;
这个想法是,如果我更改 canvas.width 属性,所有更改都会向下级联。
这种方法的一个大问题是,现在我需要记住哪些全局变量是函数。因此,例如在另一个文件中,我需要像这样访问它:
const config = require('./globals.js');
let width = config.shape.width();
理想情况下,我希望将所有全局变量作为普通属性进行访问。需要明确的是,这些都不需要是动态的(即在运行时重新计算) - 一旦应用程序运行,所有这些全局变量都可以一成不变。
实现这一目标的最佳方法是什么?我应该以某种方式“预计算”或“预构建”对象吗?
最佳答案
您可能正在寻找JavaScript's get syntax ,它允许您像属性一样访问计算值。从您的示例来看,这并不明显是绝对必要的,因为您可能记得您需要调用一个函数。但如果您确实想避免显式函数调用,请使用 getter。
关于javascript - Node.js - 具有相互依赖变量的全局配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44419705/