template plantillas not golang equal conditions go go-templates

not - plantillas golang



En una plantilla, ¿cómo accede a un alcance externo mientras está dentro de un alcance "con" o "rango"? (2)

Cuando dentro de un with o range , el alcance de . está cambiado. ¿Cómo accedes al ámbito de llamada?


Puede guardar el ámbito de llamada con una variable:

{{ $save := . }} {{ with .Inner }} Outer: {{ $save.OuterValue }} Inner: {{ .InnerValue }} {{ end }}


{{with .Inner}} Outer: {{$.OuterValue}} Inner: {{.InnerValue}} {{end}}

$ está documentado en los documentos de text/template :

Cuando comienza la ejecución, $ se establece en el argumento de datos que se pasó a Ejecutar, es decir, al valor de inicio del punto.