首页 > 其他分享 >随记一下之模板语法

随记一下之模板语法

时间:2023-02-15 14:34:16浏览次数:28  
标签:pipeline end T0 T1 语法 模板 随记

模板语法

介绍:双层大括号 {{ }} 是默认的模板界定符,用于在 HTML 模板文件中界定模板语法。

模板语法都包含在 {{}} 中间。

{{ . }} 语句

{{ . }} 中的点表示当前对象。

传入结构体时,使用 . 访问结构体对应的字段;传入 map 时,使用 . 和 key 来取值。

with 关键字

{{ with pipeline }} T1 {{ end }}

如果 pipeline 为空则不产生输出,否则将 . 设为 pipeline 的值并执行 T1,不修改外面的 .

{{ with pipeline }} T1 {{ else }} T0 {{ end }}

如果 pipeline 为空则不改变 . 并执行 T0,否则 . 设为 pipeline 的值并执行 T1

with 区块外,{{ . }} 代表传入模板的数据,而在 with 区块内,则代表 pipeline 里的数据,如 {{ with .Errors.title }} 这个区块内, {{ . }} 代表 .Errors.title

pipeline

pipeline 是指产生数据的操作。比如 {{ . }}{{ .Name }} 等。

Go 的模板语法支持使用管道符号 | 连接多个命令,用法和 Unix 下的管道类似 - | 前面的命令会将运算结果(或返回值)传递给后一个命令的最后一个位置。

※ 注意: 并不是只有使用了 | 才是 pipeline。Go 的模板中,pipeline 的概念是传递数据,只要能产生数据的,都是 pipeline。

其他模板语法

注释

{{/* 注释 */}}

变量

$variable := {{ . }}

移除空格

移除空格: {{- .Name -}}

条件判断

{{ if pipeline }} T1 {{ end }}

{{ if pipeline }} T1 {{ else }} T0 {{ end }}

{{ if pipeline }} T1 {{ else if pipeline }} T0 {{ end }}

range 遍历

range 关键字用以在模板里遍历数据, pipeline 的值必须是数组、切片、字典或者通道。

两种写法:

{{ range pipeline }} T1 {{ end }}

如果 pipeline 的值其长度为 0,不会有任何输出

{{ range pipeline }} T1 {{ else }} T0 {{ end }}

如果 pipeline 的值其长度为 0,则会执行 T0

修改默认的标识符

如遇到与其他模板采用相同的标识符 {{}} ,可以修改标识符。

template.New("test").Delims("{[","]}").ParseFiles("filename.gohtml)

标签:pipeline,end,T0,T1,语法,模板,随记
From: https://www.cnblogs.com/xylx1/p/17122845.html

相关文章

  • 重学Java-第三章 Java基本语法
    3.1基本语法​ 编写Java程序时,应注意以下几点:大小写敏感:Java是对大小写敏感的,这就表示标识符Hello和hello是不同的。类名:对所有的类来说,类名的首字母应大写,若类名由......
  • 【python版CV】图像轮廓&模板匹配
    文章目录​​1、图像轮廓​​​​1.1findContours函数:​​​​1.2获取轮廓信息(可能会报错原因)​​​​1.3绘制轮廓:​​​​1.4轮廓特征:​​​​1.5轮廓近似:​​​​1.6......
  • 中国剩余定理模板
    usingll=__int128;template<typenameT>inlinevoidrd(T&data){Tx=0,flag=1;charch=getchar();while(ch<'0'||ch>'9'){......
  • 随记一下之创建 go 项目
    创建go项目go开发工具箱下载Go官网下载地址:https://golang.org/dl/Go官方镜像站:https://golang.google.cn/dl/选用合适的系统和版本,然后进行安装。不同系统安装......
  • vue-2 插值语法
    插值语法mvm演示<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>Title</title><scriptsrc="js/vue.js"></script></head><bod......
  • Vue - 2 插值语法与指令系统
    目录Vue-2插值语法与指令系统一、插值语法语法案例二、指令1.什么是指令系统?2.文本指令v-htmlv-textv-show:显示/隐藏任务v-if:显示/删除任务3.属性指令4.事件指令5.class......
  • hadoop模板虚拟机配置
    在安装好虚拟机软件后,进行IP配置 配置windows系统的ip 配置Vmware的ip 配置虚拟机的ip首先输入suroot切换至root身份。然后配置ip和网关vim/etc/sysconfig......
  • vue 插值语法 文本指令 事件指令 属性指令 class和style 条件渲染 列表渲染
    昨日回顾#1put,post提交的json格式必须是标准json字符串格式#2字符串中不小心加了空格#4认证类,当前登录用户可以不去数据库查出来#5斜杠问题(中间件:django.mi......
  • vue 插值语法、文本指令、属性指令、事件指令、class和style、条件渲染、列表渲染
    vuevue介绍vue是一套用于构建用户界面的渐进式框架js框架M-V-VM架构思想MVCMTVMVVCMVP移动端-M:model数据层 js的数据-V:View视图层 html,css-VM:ViewModel......
  • vue-基本语法、指令、渲染
    1.vue介绍1.Vue是一套用于构建用户界面的渐进式框架。2.M-V-VM架构思想: M:Model数据层js的数据 V:View视图层html,css VM:ViewModelvue做出来的介于M和V之......