我有这个 YAML 配置文件:
sheets:
list1:
name: 'sheet1'
sql: 'SELECT'
list2:
name: 'sheet2'
sql: 'SELECT'
list3:
name: 'sheet3'
sql: 'SELECT'
我使用库'js-yaml'
来解析 YAML 配置。例如,我想控制台记录所有列表名称。我怎样才能做到这一点?我在 JS 中有这样的东西:
for(sheet in config.sheets) {
console.log(sheet.name);
}
当我console.log(sheet)
在循环中执行时,我得到 list1、list2、list3,但console.log(sheet.name)
在循环中不起作用。
您应该使用js-yaml 之类的工具,首先将您yaml
的js literal
.
const yaml = require('js-yaml');
let data = yaml.safeLoad(config);
它会返回这样的数据:
{
sheets: {
list1: {
name: "sheet1",
sql: 'SELECT'
},
......other lists
}
}
那么你可以简单地
const data = {
sheets: {
list1: {
name: "sheet1",
sql: 'SELECT'
},
list2: {
name: "sheet2",
sql: 'SELECT'
}
}
}
const name = Object.values(data.sheets).map(item => item.name)
console.log(values);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句