知识分享之Golang——templates常用语法

简介: 知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。知识分享系列目前包含Java、Golang、Linux、Docker等等。

知识分享之Golang——templates常用语法

背景

知识分享之Golang篇是我在日常使用Golang时学习到的各种各样的知识的记录,将其整理出来以文章的形式分享给大家,来进行共同学习。欢迎大家进行持续关注。

知识分享系列目前包含Java、Golang、Linux、Docker等等。

开发环境

  • 系统:windows10
  • 语言:Golang
  • golang版本:1.17

内容

在日常使用Golang进行web项目开发时,我们通常将HTML制作为模板(template)来使用,其中可变的部分通过后端接口进行传值的方式进行动态渲染,我们使用的gin框架可以快速加载template模板,详细使用可以关注我后续的gin学习相关文章。

本节我们主要对于在HTML中进行使用template常用的语法进行整合,便于我们日常快速使用查阅。

1、页面中引用传输过来的变量

<title>{{ .title}}</title>

其中{{}}是修饰符,表示这个是template语法,在模板HTML被加载时自动化渲染,这个修饰符可以在gin加载模板文件时修改,例如修改为{%%},后续具体讲解。
其中的点(.)表示这个变量是响应中的变量

2、页面中设置一个变量

{{$baseUrl := "http://127.0.0.1"}}

3、设置一个变量用于接受后端接口响应过来的信息

{{$baseUrl := .domain}}

4、if判断

{{ if .lang }}

{{end}}


{{ if .lang}}

{{else if .lang}}

{{end}}

5、if 非判断

非判断

{{if not .变量名}}
{{end}}

多对比
and 并且、or 或、eq等于、ne不等于、lt小于、le小于等于、gt大于、ge大于等于、

{{if [and/or/eq/ne/lt/le/gt/ge ] .变量名1 .变量2 }}
{{end}}

6、循环

快速遍历对象
$i是下标,$v是遍历出来的单个对象

{{range $i,$v := .变量集合}}
{{ $v.变量名}}
{{end}}

快速遍历写法,其中中间部分是访问[变量集合]中遍历的每个对象下的相关变量。
注:如果在遍历循环内部中使用外部变量,需要在变量前面加上$,即 $.变量名

{{range  .变量集合}}
{{ .遍历后对象中的某个变量 }}
{{end}}

7、声明模板名称

顶部添加,通常模板名称在HTML页面的头和尾部,而HTML代码放在模板内容中。
{{define "模板名称"}}
// 模板内容

{{end}}

8、引用模板

{{template "引用的模板名称" .}}
注意:在结束位置有一个点(.),这样我们可以直接使用引用模板中的变量,通常我们都是带有这个点的。

以上就是我们比较常用的一些语法,未包含的欢迎在留言区进行留言,我将进行补充,感谢。

本文声明:

5330898-d1c72b6c90e378f3.png
知识共享许可协议
本作品由 cn華少 采用 知识共享署名-非商业性使用 4.0 国际许可协议 进行许可。

目录
相关文章
|
6天前
|
Go
4.1 golang基础语法
4.1 golang基础语法
31 0
|
6天前
|
Go
Golang深入浅出之-Go语言基础语法:变量声明与赋值
【4月更文挑战第20天】本文介绍了Go语言中变量声明与赋值的基础知识,包括使用`var`关键字和简短声明`:=`的方式,以及多变量声明与赋值。强调了变量作用域、遮蔽、初始化与零值的重要性,并提醒读者注意类型推断时的一致性。了解这些概念有助于避免常见错误,提高编程技能和面试表现。
29 0
|
6天前
|
JSON 安全 Java
golang面试:golang基础语法(一)
golang面试:golang基础语法(一)
43 0
|
6月前
|
存储 人工智能 Java
深入了解Golang:基本语法与核心特性解析
深入了解Golang:基本语法与核心特性解析
|
7月前
|
安全 IDE Linux
【Golang】一文学完 Golang 基本语法
【Golang】一文学完 Golang 基本语法
32 0
|
8月前
|
Go
Golang语法入门指南
Go是一种现代、高效、并发的编程语言,被设计用于构建可靠且高性能的软件。它具有简单的语法和强大的标准库,适用于各种类型的应用程序开发。本博客将引导您快速入门Golang的基本语法,并提供一些实用的技巧和最佳实践。
63 0
|
编译器 Go
Golang泛型语法
在定义函数(结构等)时候,可能会有多种类型传入。只有在真正使用才知道是什么类型,此时就可以用一个更加宽泛的类型(必须存在一定约束,只能在那些类型的范围内使用)暂时占位。这个类型就叫泛型
638 0
|
存储 关系型数据库 MySQL
Golang基本语法-掘金课程笔记
Golang基本语法-掘金课程笔记
93 0
Golang基本语法-掘金课程笔记
|
JSON 监控 Go
【Golang 快速入门】高级语法:反射 + 并发
Golang 进阶 反射 变量内置 Pair 结构 reflect 结构体标签 并发知识 基础知识 早期调度器的处理 GMP 模型 调度器的设计策略 并发编程 goroutine channel 无缓冲的 channel 有缓冲的 channel 关闭 channel channel 与 range channel 与 select
237 0
【Golang 快速入门】高级语法:反射 + 并发
|
存储 Kubernetes 算法
【Golang 快速入门】基础语法 + 面向对象
Golang 语言特性 Golang 的优势 Golang 的应用场景 Golang 的不足 基础语法 main 变量 常量与 iota string 字符串遍历 strings 包 bytes 包 strconv 包 unicode 包 循环语句 range 函数 多返回值 init 函数 闭包 import 导包 匿名函数 指针 defer 切片 slice 数组 slice slice 操作 ... map map 的声明 map 的使用 error 面向对象编程 type 方法 struct 封装
162 0