Helm 模板使用下划线为范围索引添加前缀

bea*_*ice 3 go-templates kubernetes-helm

我们可以通过这种方式访问​​索引:

{{- range $i, $s := (some list) }}
{{$i}}
{{-end }}

output:
0
1
..etc
Run Code Online (Sandbox Code Playgroud)

但是,当列表是字符串拆分的结果时,索引将以下划线作为前缀

{{- range $i, $s := (split "X" "aaXbbXcc") }}
{{$i}}
{{-end }}

output:
_0
_1
..etc
Run Code Online (Sandbox Code Playgroud)

为什么?

Ini*_*ian 5

split函数返回一个字典,其索引成员前面带有一个_字符前缀。当您计划使用点表示法来访问成员并且不太适合使用 进行迭代时,它非常有用range

要以字符串列表及其索引的形式访问结果,请使用splitList. 请参阅文档以获取更多信息

{{- range $i, $s := (splitList "X" "aaXbbXcc") }}
{{$i}}
{{- end }}
Run Code Online (Sandbox Code Playgroud)