深色模式
Go 模板语法
Go语言的模板(template)语法主要用于生成文本输出,比如HTML页面、配置文件、代码生成等。Go提供了两个主要的模板包:text/template
和 html/template
。
基本语法
基本结构
go
{{.}} // 输出当前数据
{{.Field}} // 输出结构体字段
{{.Method}} // 调用方法
变量和赋值
go
{{$var := .Field}} // 定义变量
{{$var}} // 使用变量
条件语句
go
{{if .Condition}}
条件为真时显示
{{else}}
条件为假时显示
{{end}}
{{if eq .Status "active"}}
状态是激活的
{{end}}
循环语句
go
{{range .Items}}
{{.}} // 当前项
{{end}}
{{range $index, $value := .Items}}
索引: {{$index}}, 值: {{$value}}
{{end}}
比较运算符
go
{{eq .A .B}} // 等于
{{ne .A .B}} // 不等于
{{lt .A .B}} // 小于
{{le .A .B}} // 小于等于
{{gt .A .B}} // 大于
{{ge .A .B}} // 大于等于
逻辑运算符
go
{{and .A .B}} // 逻辑与
{{or .A .B}} // 逻辑或
{{not .A}} // 逻辑非
管道操作
go
{{.Name | printf "Hello, %s"}} // 管道传递
{{.Price | printf "%.2f"}} // 格式化输出
内置函数
go
{{len .Items}} // 长度
{{index .Items 0}} // 索引访问
{{printf "%s" .Name}} // 格式化
{{html .Content}} // HTML转义
{{js .Script}} // JavaScript转义