如何使用node-config从数组中获取项目属性

时间:2019-05-13 15:31:20

标签: node-config

我无法从配置文件中的数组中获取项目。

{ 
 "crawlerConfigurations":{
        "ClickDelay": 100,
        "TypeDelay": 200,
        "Selectors": {
            "Search": [
                {
                    "SearchInitUrl": "https://www.wukong.com"
                 }
          ]
  }
}

我正在尝试获取第一个“搜索”项目的SearchInitUrl属性,而我正在使用

config.get(`crawlerConfigurations:Selectors.Search[0].SearchInitUrl`)
config.get(`crawlerConfigurations:Selectors.Search.[0].SearchInitUrl`)

没用

希望有人会帮助,谢谢。

1 个答案:

答案 0 :(得分:1)

我不建议在配置中使用数组,因为从覆盖角度来看它们是一个整体(例如字符串是字符数组,您不能覆盖子字符串)。

也就是说,有时候您想要这种行为。当您这样做时,以下应该会起作用

config.get('crawlerConfigurations.Selectors.Search.0.SearchInitUrl');

数字零(0)是变量名,与路径中的其他名称一样。不知道为什么原来的问题在字符串中有一个“:”,但这是一个错误。