【发布时间】:2020-02-20 00:26:41
【问题描述】:
我有一个带有打字稿的节点项目,我正在尝试从 json 对象中读取正确的 url。 但是,当使用方括号表示法时,我得到未定义。
{
"env":"dev",
"dev":{
"url": "url1"
},
"aws":{
"url": "url2"
}
}
由于某种原因,这不起作用:
const url = config[config.env].url;
下面的代码完成了我所需要的,但它不像上面那样灵活,我想了解为什么它不能以其他方式工作。
const cenv:string = config.env;
let url=null;
if( cenv === "dev")
url = config["dev"].url;
else
url = config["aws"].url;
这是我的 tsconfig 文件:
{
"compilerOptions": {
"lib": [
"es2017"
],
"moduleResolution": "node",
"noUnusedLocals": true,
"noUnusedParameters": true,
"sourceMap": true,
"target": "es2017",
"outDir": "lib",
"resolveJsonModule": true
},
"exclude": [
"node_modules"
]
}
json 像这样导入到项目中:
import * as config from './config.json';
【问题讨论】:
标签: javascript node.js json typescript aws-lambda