go语言Gin框架的学习路线(二)

1.嵌套template

我们可以在template中嵌套其他的template 。这个template可以是单独的文件,也可以是通过define定义的template。代码内容出现的顺序按代码的时间来决定就是看谁在上面



lock

{{block "name" pipeline}} T1 {{end}}

block是定义模板{{define "name"}} T1 {{end}}和执行{{template "name" pipeline}}缩写,典型的用法是定义一组根模板,然后通过在其中重新定义块模板进行自定义。
我们需要定义一个根模板,其实很多页面的基本模板都是一样的就比如我下面的代码




从上面的代码我们可以看出来他们的基础框架是差不多一样有一个导航栏和一个菜单栏 ,很多页面都是这样子,只是我们内容那里不一样,那就叫做根模板,然后我们可以直接拿别人的根模板

因为上面那样子太麻烦了,我们可以定义共有模板

比如我的代码base.tmpl然后直接继承这个基础的代码



这样子就可以用继承的模式

修改默认的标识符

Go标准库的模板引擎使用的花括号{{和}}作为标识 ,而许多前端框架(如Vue和 AngularJS)也使用{{和}}作为标识符,所以当我们同时使用Go语言模板引擎和以上前端框架时就会出现冲突,这个时候我们需要修改标识符,修改前端的或者修改Go语言的

text/template与html/tempalte的区别

html/template针对的是需要返回HTML内容的场景 ,在模板渲染过程中会对一些有风险的内容进行转义,以此来防范跨站脚本攻击。


期末放假自学Gin框架,希望我们可以一起学习!

相关推荐
报错小能手几秒前
linux学习笔记(43)网络编程——HTTPS (补充)
linux·网络·学习
报错小能手3 分钟前
linux学习笔记(45)git详解
linux·笔记·学习
百锦再39 分钟前
Vue Scoped样式混淆问题详解与解决方案
java·前端·javascript·数据库·vue.js·学习·.net
Larry_Yanan44 分钟前
QML学习笔记(四十四)QML与C++交互:对QML对象设置objectName
开发语言·c++·笔记·qt·学习·ui·交互
Jeled2 小时前
AI: 生成Android自我学习路线规划与实战
android·学习·面试·kotlin
Larry_Yanan5 小时前
QML学习笔记(四十五)QML与C++交互:信号槽的双向实现
c++·笔记·qt·学习·ui·交互
Rock_yzh6 小时前
AI学习日记——PyTorch深度学习快速入门:神经网络构建与训练实战
人工智能·pytorch·python·深度学习·神经网络·学习
hello kitty w6 小时前
Python学习(10) ----- Python的继承
开发语言·python·学习
CandyU26 小时前
C++ 学习 —— 02 - 排序算法
c++·学习·排序算法
~无忧花开~6 小时前
CSS学习笔记(二):CSS动画核心属性全解析
开发语言·前端·css·笔记·学习·css3·动画