繁体   English   中英

Golang HTTP /模板变量

[英]Golang http/template variable

我在名为$ active的模板中有一个变量,其目的是检查该变量以使navrbar按钮处于活动状态或不处于活动状态。 我已经定义了发生逻辑的标头,但是我试图在由Execute函数调用的html文件上定义$ active。 问题是首先读取标头,所以主体文件中定义的任何变量都太晚了,无法影响逻辑。 从标题:

{{ $a := mkSlice "SiteTester" "/sitetester-add/" }}
{{ $b := mkSlice "Index" "/" }}
{{ $nav := mkSlice $a $b }}
                <ul class="nav navbar-nav">
                    {{range $nav}}
                    <li{{if eq $active (index . 0) }} class="active"{{end}}><a href="{{index . 1}}">{{index . 0}}</a></li>
                    {{end}}
                </ul>

我什至一直试图制作一个单独的代码片段,以处理变量分配:

{{define "indexpreload"}}
{{$active := "Index"}}
{{end}} 

并首先在解析的.html中调用它:

    {{template "indexpreload" .}}    
    {{template "header" .}}

    <h3 class="section-banner"><strong>Welcome</strong></h3>
    <hr class="divider">
    <div class="form-group col-md-4 text-left"></div>
    <div class="form-group col-md-4 text-left">
        <br><br>
        <p>Content content content</p>

    </div>

    {{template "footer" .}}

我希望在运行标头之前如何分配变量有任何想法? 我希望将此登录名保留在模板中,因此不必担心从程序中传递变量。

您是否发现写下您的问题的举动在您的脑海中澄清了问题,因此您很快便会自己回答? 当我意识到我需要弄清楚如何在嵌套模板之间传递局部变量时,就发生了这种情况。 对于任何希望在同一问题上寻求帮助的人,它就像

{{template "<name>" $<variable name>}}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM