Yaml语法很好懂,唯一费解点的就是这anchor, alias和merge这三了,基本格式如下:
anchor:
&<anchor-name>
alias:
*<anchor-name>
merge:
<< : *<anchor-name>
<< : [ *<anchor-name>, *<anchor-name>, … ]
功能其实也很好理解,anchor给配置起一个名字。alias引用该配置。merge和alias也是一样,引用该配置,但是merge功能更复杂,还可以修改或覆盖override原有配置的值。
直接上例子吧:
# 假设有以下定义,每个都用anchor命名 --- - &CENTER { x: 1, y: 2 } - &LEFT { x: 0, y: 2 } - &BIG { r: 10 } - &SMALL { r: 1 } # 下面这几个写法的效果是相同的 - # Explicit keys x: 1 y: 2 r: 10 label: center/big - # Merge one map << : *CENTER r: 10 label: center/big - # Merge multiple maps << : [ *CENTER, *BIG ] label: center/big - # Override << : [ *BIG, *LEFT, *SMALL ] x: 1 label: center/big
回复 agodelo 取消回复