为什么在条件 Go 模板中使用破折号

why dash is used in condition Go templates

我见过许多破折号用于 if 语句(“{{- if..”)的示例,例如:

{{- if hasKey .Values.mymap "mykey" }}
    # do something conditional here...
{{- end }}

该语句中破折号的用途是什么?

Dash 从输出中删除模板中出现的那一侧的空格:

https://golang.org/pkg/text/template/#hdr-Text_and_spaces

{{- if ...}}

以上将删除 if 语句之前出现的所有空格,因此如果 if 的结果打印某些内容,它将紧接在最后一段文本之后,没有任何空格。