gpt4 book ai didi

javascript - Node 需要用方括号传递 arg 的模块?这是一个错误吗?

转载 作者:搜寻专家 更新时间:2023-11-01 00:14:51 26 4
gpt4 key购买 nike

我在 git hub 仓库中看到了以下 nodeJS 代码:

var env = process.env.NODE_ENV || 'development'
, config = require('./config/config')[env]
, auth = require('./config/middlewares/authorization')
, mongoose = require('mongoose');

[env] 之前我从来没有见过方括号这是一个错误吗?我认为 args 只能在普通括号 ( ) 中传递。我在任何地方都找不到关于此的文档。

有问题的 repo 在这里 https://github.com/diki/nodejs-passport-boilerplate及其在 server.js 的第 17 行。

最佳答案

查看他们的 config.js例如,该文件将每个环境导出为键的对象:

module.exports = {
development: {
db: 'mongodb://localhost/noobjs_dev',
root: rootPath,
// ...
},
test: {
db: 'mongodb://localhost/noobjs_test',
root: rootPath,
// ...
},
production: {}
}

方括号将仅选择与您的 NODE_ENV 变量中定义的环境相关的配置。

假设 NODE_ENV 持有值 development,这与这样做是一样的:

var config = require('./config/config').development;

与此相同:

var config = require('./config/config')['development'];

方括号的优点在于它们允许您动态选择对象上的键。

关于javascript - Node 需要用方括号传递 arg 的模块?这是一个错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29560422/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com