Golang templates: comment définir un tableau dans une variable?
quelle serait la syntaxe correcte pour définir une variable de tableau à l'intérieur d'un modèle go ? (voici un modèle HTML). Voici ce que j'ai essayé :
{{define "template"}}
{{ $x:=[]int{0,1,2} }}{{$x[0]}}
{{end}}
le journal des erreurs dit:unexpected "[" in command
Merci.
8
demandé sur
Yves M.
2014-07-29 13:48:14
2 réponses
il n'y a pas de façon intégrée de faire ce que vous voulez accomplir. Voir le arguments sur ce que vous pouvez faire avec les arguments et le pipeline.
Mais vous pouvez facilement définir votre propre fonction pour atteindre votre objectif:
package main
import (
"html/template"
"os"
)
func main() {
tmpl := `
{{ $slice := mkSlice "a" 5 "b" }}
{{ range $slice }}
{{ . }}
{{ end }}
`
funcMap := map[string]interface{}{"mkSlice": mkSlice}
t := template.New("demo").Funcs(template.FuncMap(funcMap))
template.Must(t.Parse(tmpl))
t.ExecuteTemplate(os.Stdout, "demo", nil)
}
func mkSlice(args ...interface{}) []interface{} {
return args
}
9
répondu
seong
2014-07-29 10:28:26
map
ou array
type n'est pas pris en charge, mais je passe l' map
ou array
variable du controller au template, puis utilisez {{index .Varible KEY}}
pour obtenir l' map
ou array
valeur pour avancer.
voulez que cela pourrait vous aider.
1
répondu
touchstone
2017-06-01 06:42:35