Go html/template 定义及调用模板

Go html/template 模板定义语法

{{define "模板名称"}}
html 模板
{{end}}

Go html/template 模板调用语法

{{template "模板名称" 传递变量【可选参数】}}

子模板定义及调用示例

模板结构

|_ templates
    |_ header.html 网站通用头部模板
    |_ index.html 网站首页主体(调用头部及底部模板)
    |_ footer.html 网站通用底部模板

header.html 源码

{{define "header"}}
<header>
    <div>头部 {{.varTest}}</div>
</header>
{{end}}

footer.html 源码

{{define "footer"}}
<footer>
    <div>底部</div>
</footer>
{{end}}

index.html 源码

注意 : template "header" . 使用 "." 来传递数据给子模板;

<html>
<body>
    {{template "header" .}}
    <div>
        主题
    </div> 
    {{template "footer"}}
</body>
</html>