在html / templates中是否有任何方法可以在所有页面上使用常量页眉/页脚?

时间:2015-06-11 19:14:31

标签: go go-html-template

阅读docs并不是特别有用,我想知道结构是否

{{header}}

   {{content that always changes}}

{{footer}}
使用golang可以实现

1 个答案:

答案 0 :(得分:1)

使用text/template

  1. 将其呈现给Stdout的代码

    t := template.Must(template.ParseFiles("main.tmpl", "head.tmpl", "foot.tmpl"))
    t.Execute(os.Stdout, nil)
    
  2. main.tmpl:

    {{template "header" .}}
    <p>main content</p>
    {{template "footer" .}}
    
  3. foot.tmpl:

    {{define "footer"}}
    <footer>This is the foot</footer>
    {{end}}
    
  4. head.tmpl:

    {{define "header"}}
    <header>This is the head</header>
    {{end}}
    
  5. 这将导致:

    <header>This is the head</header>
    <p>main content</p>
    <footer>This is the foot</footer>
    

    使用html/template将非常相似。