模板命名
代码语言:javascript复制{{ define "admin/index.html" }}
{{ end }}
模板引用
代码语言:javascript复制{{template "admin/index.html" .}}
模板变量
使用后台传入的变量
代码语言:javascript复制{{ .name }}
{{ .content.title }}
定义变量
代码语言:javascript复制{{ $arg := .name }}
{{ $arg }}
条件判断
代码语言:javascript复制{{ if .flag }}
A
{{ else if .flag }}
B
{{ else }}
C
{{ end }}
比较方法
使用方法:
代码语言:javascript复制{{ if gt .arg1 arg2 }}
{{ end }}
函数表:
函数 | 作用 |
---|---|
eq | 如果 arg1 == arg2 则返回真 |
ne | 如果 arg1 != arg2 则返回真 |
lt | 如果 arg1 < arg2 则返回真 |
le | 如果 arg1 <= arg2 则返回真 |
gt | 如果 arg1 > arg2 则返回真 |
ge | 如果 arg1 >= arg2 则返回真 |
循环
代码语言:javascript复制{{range $key,$value := .list }}
{{ $value }}
{{ else }}
list长度为0
{{ end }}
with关键字
正常输出
代码语言:javascript复制{{ .user.Name }}
{{ .user.Age }}
简化输出
代码语言:javascript复制{{ with .user }}
{{ .Name }}
{{ .Age }}
{{ end }}
预定义函数
使用方法:
代码语言:javascript复制{{ func .arg1 .arg2 .arg3 }}
函数表:
函数 | 作用 |
---|---|
not | 返回它的单个参数的布尔值的否定 |
len | 返回它的参数的整数类型长度 |
index | 第一个参数为数组或字典,后面所有的参数为索引 |
其它
导入静态文件
代码语言:javascript复制# /static为静态路由
r.Static("/static", "./static")
导入模板
代码语言:javascript复制# 要在模板里面提前定义好模板名称
r.LoadHTMLGlob("templates/**/*")