英文:
Go template checking for current page for nav bar
问题
我正在尝试在golang模板中设置一个li元素,根据当前页面来设置为活动状态。根据我所了解,你只能使用{{if .scoreheader}}来检查变量的存在性。是否有其他方法可以解决这个问题?
{{range $id, $name := .test}}
{{if $name == .scoreheader}}
<li class="active">
{{else}}
<li>
{{end}}
<li><a href="/app/index/?company={{$id}}">{{$name}}</a></li>
{{end}}
英文:
I'm trying to set a li in a golang template to active based on the current page. From what I've read you can only do {{if .scoreheader}} to check existence of a variable. Is there another way around this?
<div class="col-md-3">
<ul class="nav nav-pills nav-stacked">
{{range $id, $name := .test}}
{{if $name == .scoreheader}}
<li class="active">
{{else}}
<li>
{{end}}
<li><a href="/app/index/?company={{$id}}">{{$name}}</a></li>
{{end}}
</ul>
</div>
答案1
得分: 1
你可以使用eq
函数,如text/template
中所解释的那样:
还有一组作为函数定义的二进制比较运算符:
eq 返回 arg1 == arg2 的布尔值
因此,你的if语句应该是:
{{if eq $name $.scoreheader}}
英文:
You can use the eq
function as explained in text/template
:
> There is also a set of binary comparison operators defined as
> functions:
>
> eq Returns the boolean truth of arg1 == arg2
So your if-statement would be:
{{if eq $name $.scoreheader}}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论