如何创建js常量对象与"依赖/相对;价值观

How to create js constants object with "dependent/relative" values?

本文关键字:quot 依赖 价值观 相对 对象 何创建 创建 常量 js      更新时间:2023-09-26

我正在处理js+php项目,希望有一个常量类,它将存储所有代码部分的最常见值;

问题是这些常数值彼此之间的关系非常密切。例如,让我们假设我有源代码和测试目录。它们都是这样存储的:

src/
   main/
   test/

所以,正如我所说,我希望在javascript中有一个常量对象,它具有以下结构:

const CONSTANTS = {
    CODE: {
        CWD: 'src/',
        SOURCES: {
           DIRECTORY: '<%= CODE.CWD %>/src',
        },
        TESTS: {
           DIRECTORY: '<%= CODE.CWD %>/test',
        }
    }
}
exports.CONSTANTS = SomeLibraryOrSmthElse.process(CONSTANTS);

正如你所注意到的,格兰特也以同样的方式工作。

我该怎么做?

我只需要提取共享值作为变量并重用它。以下代码使用ES2015的模板字符串文字,假设它可用,因为您已经放置了const

const CWD = 'src/';
const CONSTANTS = {
    CODE: {
        CWD,
        SOURCES: {
           DIRECTORY: `${CWD}/src`,
        },
        TESTS: {
           DIRECTORY: `${CWD}/test`,
        }
    }
};