我有像这样的锚数组的YAML文件。
sammy: &as
- a
- c
现在我想添加新密钥,但是按照以下方式:
mobile:
<<: *as # Want to add new element in between a & c
# i.e.
# The new mobile should be
# a b c
有可能吗?
注意:我使用ysets在app中检索这些键。
答案 0 :(得分:0)
不,这是不可能的。原因是您的别名as
引用的锚定元素必须是根据specification for merge keys的映射。
你的元素(即sammy
的值)是一个序列,而不是映射,所以这不起作用。
这也是检查的原因:
sammy: &as
- a
- c
mobile:
<<: *as
online会给您一个错误。
解决这个问题的唯一方法就是做一些事情:
sammy: &as
1: a
3: c
mobile:
<<: *as
2: b
然后使用按其键排序的mobile
值。