在 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
这是可能的:
t_shirt:
&t_shirt_size EXTRA_SMALL
满足你只需要一次更改就可以到处更改大小的要求。如果你需要间接,你能做的最接近的事情是
t_shirt:
&t_shirt_size [ *t_shirt_md ]
然后你需要在加载过程中将大小值作为 1 值序列处理。
YAML 序列化有向节点图。使用别名与引用节点建立另一个连接,因此不会创建新节点,因此无法锚定它。锚点和别名的目的是能够序列化循环图。