1. 输出变量值:
使用 {{ .变量名 }} 语法来输出变量的值。
<p>Name: {{ .Name }}</p>
2. 条件判断:
使用 {{ if .条件 }} ... {{ else }} ... {{ end }} 语法进行条件判断。
{{ if .IsAdult }}
<p>Adult</p>
{{ else }}
<p>Not Adult</p>
{{ end }}
3. 循环迭代:
使用 {{ range .切片或映射 }} ... {{ end }} 语法进行循环迭代。
<ul>
{{ range .Items }}
<li>{{ . }}</li>
{{ end }}
</ul>
4. 模板函数调用:
使用 {{ 函数名 .参数 }} 语法调用模板函数。
<p>Formatted Time: {{ dateFormat .CreateTime "2006-01-02 15:04:05" }}</p>
5. 模板嵌套:
使用 {{ template "TemplateName" .参数 }} 语法进行模板嵌套。
{{ define "subtemplate" }}
<p>Subtemplate Content</p>
{{ end }}
{{ template "subtemplate" . }}
6. 注释:
使用 {{/* 注释内容 */}} 进行模板注释。
{{/* This is a comment */}}
7. with 结构:
使用 {{ with .变量 }} ... {{ end }} 语法创建一个新的作用域。
{{ with .User }}
<p>Name: {{ .Name }}</p>
{{ end }}
8. 模板变量定义:
使用 {{ $变量名 := .某表达式 }} 语法定义一个模板变量。
{{ $sum := add .Num1 .Num2 }}
<p>Sum: {{ $sum }}</p>
示例:
以下是一个包含上述模板标签的示例:
<html>
<head>
<title>{{ .Title }}</title>
</head>
<body>
<h1>Hello, {{ .User.Name }}!</h1>
{{ if .User.IsAdult }}
<p>Adult</p>
{{ else }}
<p>Not Adult</p>
{{ end }}
<ul>
{{ range .User.Interests }}
<li>{{ . }}</li>
{{ end }}
</ul>
<p>Formatted Time: {{ dateFormat .User.CreateTime "2006-01-02 15:04:05" }}</p>
{{ define "subtemplate" }}
<p>Subtemplate Content</p>
{{ end }}
{{ template "subtemplate" . }}
{{ with .AnotherUser }}
<p>Another User: {{ .Name }}</p>
{{ end }}
{{ $sum := add .Num1 .Num2 }}
<p>Sum: {{ $sum }}</p>
</body>
</html>
这是一个包含了常见模板标签的简单示例,实际使用时可以根据项目需求编写更复杂的模板逻辑。在编写模板时,请注意遵循 Go 的模板语法规则。
转载请注明出处:http://www.zyzy.cn/article/detail/7611/GoFrame