-3
我有一些地圖。 (點符號),我想只打印每個鍵。 我知道我們可以使用一些:從Golang模板中獲取所有鑰匙而不使用增值服務
{{ range $key, $value := . }}{{ $key }}{{end}}
但我不能使用VAR,因爲我使用泊塢撰寫文件,該文件的問題withi符號$。
如何在不使用變量的情況下打印所有鑰匙?
我有一些地圖。 (點符號),我想只打印每個鍵。 我知道我們可以使用一些:從Golang模板中獲取所有鑰匙而不使用增值服務
{{ range $key, $value := . }}{{ $key }}{{end}}
但我不能使用VAR,因爲我使用泊塢撰寫文件,該文件的問題withi符號$。
如何在不使用變量的情況下打印所有鑰匙?
提取鍵並對它們進行排序,然後將它們饋送到視圖中,因爲無論如何迭代映射都具有不確定的順序(您不需要)。
import "sort"
var m map[int]string
var keys []int
for k := range m {
keys = append(keys, k)
}
sort.Ints(keys)
在範圍循環中,使用。參考正在排列的項目。爲該循環創建新的上下文。
{{ range . }}
{{ . }}
{{ end }}
但是,我建議你使用符號$解決問題,你會想要使用它。這聽起來像是對Docker Compose文件的錯誤使用 - 您可以將golang模板放入單獨的文件中,或者如果您希望進行單個二進制部署,則可以將它們放入go源文件本身。
謝謝,我已經讚揚上面的排序鍵首先得到可預見的順序了。 –