【发布时间】:2018-12-23 00:01:24
【问题描述】:
我在他们的目录中有许多配置,它们响应不同的任务。但在某些情况下,我需要从另一个文件中获取配置。示例:
文件1:
module.exports = Object.freeze({
uid: 'uid',
name: 'name',
admin: 'admin',
balance: 'balance',
state: 'state',
bet: 'bet',
size: 'size',
chance: 'chance',
language: 'language'
})
文件2:
module.exports = Object.freeze({
url: 'mongodb://localhost:27017/',
table: 'casino-db',
row: 'users',
user: require('/api/user/config')
})
没事吧?我听说动态调用 require() 很糟糕,因为它以另一种方式工作,而不是从文件开始调用它。
有人使用这种配置结构吗?
【问题讨论】:
-
这没有错,它只会被评估一次。所有对
require()的调用都以相同的方式工作,实际上它有一个内部缓存以防止依赖项运行多次,因此后续调用基本上被简化为对缓存对象的属性访问。
标签: javascript node.js config