В шаблоне, как вы получаете доступ к внешней области внутри области "с" или "диапазон"?
Внутри with
или range
область .
изменяется. Как получить доступ к области вызова?
Ответы
Ответ 1
{{with .Inner}}
Outer: {{$.OuterValue}}
Inner: {{.InnerValue}}
{{end}}
$
документируется в text/template docs:
Когда выполнение начинается, $устанавливается на аргумент данных, переданный в Execute, то есть на начальное значение точки.
Ответ 2
Вы можете сохранить область вызова с переменной:
{{ $save := . }}
{{ with .Inner }}
Outer: {{ $save.OuterValue }}
Inner: {{ .InnerValue }}
{{ end }}