美文网首页
93.模板详细使用(五)模板嵌套模板

93.模板详细使用(五)模板嵌套模板

作者: 厚土火焱 | 来源:发表于2023-07-06 23:19 被阅读0次

当多个页面有很多重复的展示区域的时候,我们必然会想到“复用”。在界面上,自然会想到模板嵌套另一个模板,从而达到复用的目的。
比如,页面的底部,在一个系统中,可能几十或者上百个页面,底部都是完全一样的。这个时候就非常适合使用模板嵌套来实现了。
首先,我们要记住一个要点,模板嵌套的时候,是需要在加载模板的go代码中,完整写下所有模板文件的路径和文件的。就像这样。

files, err := template.New("cofox").ParseFiles("./a.html", "./footer.html")

a模板是主模板,footer模板是子模板。
然后就是模板之间的关联了。
我们把它们建立为继承关系。

template继承

{{block "name" .}}{{end}}

在主模板中,嵌入调用子模板的代码。主模板将把子模板中要显示的内容全部显示在主模板。
主模板 a.html

<html>
<body>
   ...
   {{block "footer" .}}{{end}}
</body>
</html>

子模板 footer.html

{{template "a.html"}}

{{define "footer"}}
   <p class="mb-0">{{.PageFooter}}</p>
 {{end}}

注意2个模板文件中的“footer”,是建立模板正确关联的关键。而子模板中的第一行代码,是继承主模板的声明语句。
至此,go代码加载a模板的时候,只要同时给PageFooter赋值了,那么页面上将会使用子模板的样式在主模板页面显示出来。

注意

模板文件的后缀,常规会写成tmpl,而在实际应用中,使用html作为后缀也是可以的。

相关文章

  • 小程序-template嵌套template的数据传递

    说明 一个页面需要多个界面进行组合模板1:courses-isbuy 代码: 模板2:分类模板 嵌套组合模板(模板...

  • JavaScript 模板字符串知识点归纳

    参考链接:模板字符串 换行 嵌入表达式 嵌套模板 在模板字符串内的 ${ } 占位符中,可以直接使用 ` 符号而无...

  • 领导力培训和发展行业的电子学习模板

    模板一: 模板二: 模板三: 模板四: 模板五: 模板六: 模板七: 模板八: 模板九: 模板十: 模板十一: 模...

  • 《PHP Learning》模板引擎

    《PHP Learning》模板引擎 模板处理使用正则处理模板替换规则保存模板编译结果 模板使用 自定义模板引擎 ...

  • 2021-01-23

    STL的核心便是泛化思想。使用template来进行泛化编程,同时类模板还可以进一步嵌套类模板,即成员模板,同时由...

  • C++成员模板作为构造函数(Boolan)

    成员模板就是模板类内嵌套不同参数的模板函数,形如: 之前我看视频说成员模板常常用来作为构造函数,让模板类型为子类的...

  • C++ 中的模板

    类模板 函数模板 成员模板(member template) 成员模板其实就是一个类里面使用了一个模板函数。使用模...

  • Spring boot入门Controller

    缺少了模板的渲染,springboot支持的模板如下: Thymeleaf模板的使用:(使用官方推荐的这个模板,先...

  • 2018-05-17

    函数包装器与模板 函数模板的嵌套 模板与引用 //变量 左值引用 右值引用 原则不能冲突//ref 变量 -> ...

  • ThinkPHP模板布局与继承

    阅读原文 ThinkPHP的模板引擎内置了布局模板功能支持,可以方便的实现模板布局以及布局嵌套功能。 项目目录 全...

网友评论

      本文标题:93.模板详细使用(五)模板嵌套模板

      本文链接:https://www.haomeiwen.com/subject/wzjrudtx.html