美文网首页
golang 模板继承

golang 模板继承

作者: 韩小禹 | 来源:发表于2020-05-07 10:30 被阅读0次
  • main.go
package main

import (
    "fmt"
    "html/template"
    "net/http"
)

func index(w http.ResponseWriter, r *http.Request) {
    // 定义模板
    // 解析模板
    // 父模板和子模板的顺序不能乱,父在前,子在后
    t, err := template.ParseFiles("./layouts/main.tmpl","./layouts/content.tmpl")
    if err != nil{
        fmt.Printf("parse files failed, err : %v\n", err)
        return
    }
    // 渲染模板
    // 渲染模板时使用ExecuteTemplate函数,需要制定要被渲染的模板名称
    t.ExecuteTemplate(w, "content.tmpl","index")
}


func main() {
    http.HandleFunc("/index", index)
    err := http.ListenAndServe(":8080", nil)
    if err != nil {
        fmt.Printf("http server failed, err : %v\n", err)
        return
    }
}

  • layouts/main.tmpl
<html>
<head>
    <title>模板继承</title>
    <style>
        *{
            margin :0;
        }
        .nav{
            height: 50px;
            position:fixed;
            width: 100%;
            top:0;
            background-color: burlywood;
        }
        .main{
            margin-top: 50px;
        }
        .menu{
            width: 200px;
            height:100%;
            position: fixed;
            left: 0;
            background-color: cornflowerblue;
        }
        .center{
            text-align: center;
        }
    </style>
</head>
<body>
<div class="nav"></div>
<div class="main">
    <div class="menu"></div>
    <div class="content center">
        <!--定义一个区块-->
        {{block "content" .}}{{end}}
    </div>
</div>
</body>
</html>
  • layouts/content.tmpl
  • {{template "main.tmpl" .}}这里的点"."必须加上,否则子模板将获取不到数据
{{template "main.tmpl" .}}
{{define "content"}}
<h1>
    这里是子模板,{{ . }}
</h1>
{{end}}

相关文章

  • golang 模板继承

    main.go layouts/main.tmpl layouts/content.tmpl {{template...

  • Flask基础03

    模板 1 模板的继承 什么是模板的继承​ 模板的继承类似于类的继承,如果一个模板中所出现的大量内容与另一个模板...

  • Flask框架从入门到精通之模板导入与继承(十八)

    知识点:1、模板导入2、模板继承 一、概况 模板导入就是将另一个模板加载到当前模板中,直接渲染。模板继承和类的继承...

  • Tornado框架的模板继承(四)

    一、模板的继承 1、extends{% extends filename %}继承模板,在子模板中会把父模板的所有...

  • flask模板继承

    模板继承笔记: 为什么需要模板继承: 模板继承可以把一些公用代码单独抽取出来放到一个父模板中,以后子模版直接继承就...

  • 2.8 jinja2 模板继承

    模板继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过...

  • golang 模板使用示例

    生产环境keepalived.conf 文件使用golang模板渲染示例 模板文件编写示例:

  • Flask系列教程(12)——模板继承

    模版继承 Flask中的模板可以继承,通过继承可以把模板中许多重复出现的元素抽取出来,放在父模板中,并且父模板通过...

  • flask中jinjia2模板引擎使用详解3

    接上文 模板继承 Jinji2中的模板继承是jinjia2比较强大的功能之一。 模板继承可以定义一个父级公共的模板...

  • python-Flask(jinja2)语法:模板继承

    模板继承 [TOC] 语法 将模板公用的代码放在父模板base.html中,其他html页面通过继承父模板的方式避...

网友评论

      本文标题:golang 模板继承

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