【问题标题】:yaml: why isn't this creating a subobject?yaml:为什么不创建子对象?
【发布时间】:2015-10-04 02:17:54
【问题描述】:

http://nodeca.github.io/js-yaml/#yaml=cGFyZW50OgoJY2hpbGQxOiAiZmFsc2UiCgljaGlsZDI6IAoJCXN1YmNoaWxkOiAidHJ1ZSI=

我的 YAML,我希望 child2 带有一个包含 subchild 的对象,但它在 child2 之后创建了一个单独的同级字段。

parent:
    child1: "false"
    child2: 
        subchild: "true"

我的 YAML 有什么问题?

我期待

{ parent: null, child1: 'false', child2: { subchild: 'true' } }

但是得到了

{ parent: null, child1: 'false', child2: null, subchild: 'true' }

【问题讨论】:

  • 你为什么期待child2: {}而不期待parent: { child2: {}}
  • 这就是我的预期,我专注于问题所在的领域。
  • 我认为这是由于使用tab 字符作为间距(我不知道确切的细节):nodeca.github.io/js-yaml/…(这里有四个tabs:nodeca.github.io/js-yaml/…)编辑:实际上,我认为这是因为编辑器窗格强制使用空格,即使您点击tab。类似的东西。

标签: javascript yaml codemirror


【解决方案1】:

您正在使用制表符进行缩进,这是不允许的,并且会混淆在线解析器。 Without tabs 它看起来和预期的一样。

【讨论】:

    【解决方案2】:

    使用不同的 YAML 解析器 - 你的 .yml 很好

    http://yaml-online-parser.appspot.com/

    【讨论】:

    • omg 大声笑,每次都发送一个ajax请求在服务器端解析它,太多了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-07
    • 2018-05-25
    • 2015-11-19
    • 2014-09-01
    • 2016-05-01
    • 1970-01-01
    相关资源
    最近更新 更多