YAML - 为锚点替代品分配别名

问题描述 投票:0回答:1

在 YAML 中,我们不允许为锚点分配别名。我怎样才能实现类似的功能,以便我可以在整个 YAML 文件中使用一个通用密钥,而只需要在一个位置进行更新?

t_shirt_sizes:
  &t_shirt_xs EXTRA_SMALL
  &t_shirt_sm SMALL
  &t_shirt_md MEDIUM
  &t_shirt_lg LARGE
  &t_shirt_xl EXTRA_LARGE

t_shirt:
  &t_shirt_size *t_shirt_md


# Use the *t_shirt_size further down the YAML file

store:
  order_shirt_sizes: *t_shirt_size
yaml alias directed-graph
1个回答
1
投票

这是可能的:

t_shirt:
  &t_shirt_size EXTRA_SMALL

满足你只需要一次更改就可以到处更改大小的要求。如果你需要间接,你能做的最接近的事情是

t_shirt:
  &t_shirt_size [ *t_shirt_md ]

然后你需要在加载过程中将大小值作为 1 值序列处理。

YAML 序列化有向节点图。使用别名与引用节点建立另一个连接,因此不会创建新节点,因此无法锚定它。锚点和别名的目的是能够序列化循环图。

© www.soinside.com 2019 - 2024. All rights reserved.