繁体   English   中英

跨集合验证 YAML 文件中的值

[英]Validating values in YAML files across collection

我正在使用节点( https://eemeli.org/yaml/ )来解析 YAML 配置文件,如下所示:

items:
  - name: item 1
    value: 25
  - name: item 2
    value: 25
  - name: item 3
    value: 50

我想做的是在解析文档时断言value数字加起来都是 100。

我是否应该在解析 YAML 后运行此验证

例如:

data = YAML.parse(recipe)
validate(data)

或者在加载文档时直接使用 YAML 库有更好的方法吗?

在此先感谢您的帮助!

您最好先解析 YAML,然后再查看结果数据。 因此,在这种情况下,解析后的数据将类似于:

data = {
    items: [
        {name: 'item 1', value: 25},
        {name: 'item 2', value: 25},
        ...
    ]
}

因此,您可以遍历这些值:

let total = 0;

data.items.map((item) => {
    total += item.value;
});

if (total !== 100) {
    ...
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM