Gin模板语法

2023-11-04 10:03:06 浏览数 (2)

模板命名

代码语言: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/**/*")

0 人点赞