2013-04-22 1 views

Odpowiedz

10

jeden z predefiniowanych global template functions jest index.

Powoduje zwrócenie wyniku pierwszego argumentu indeksowania według następujących argumentów: . Tak więc index x 1 2 3 jest w składni Go, x[1][2][3]. Każda pozycja indeksowana musi być map, slice lub array.

Jesteś na dobrej drodze. Jedynym problemem jest to, że nie uwzględniasz faktu, że dot został ponownie przypisany w bloku range.

Więc trzeba wrócić do pierwotnego punktu, na który mamy następujące

Kiedy zaczyna wykonanie, $ ustawiony jest przekazywane do wykonania, czyli do wartości początkowej argumentu danych kropka.

Tak (zakładając, że nie ma nic innego dzieje się w szablonie) powinien być w stanie zrobić:

{{range $i, $e := .First}}$e - {{index $.Second $i}}{{end}} 

Osobiście jednak chciałbym utworzyć funkcję szablonu o nazwie zip który akceptuje wiele plasterków i zwraca kawałek każdej pary wartości. Będzie wyglądać czysto w twoim szablonie i prawdopodobnie zostanie ponownie wykorzystany.