html.go 559 B

1234567891011121314151617181920212223242526272829
  1. package template
  2. import (
  3. "html/template"
  4. "io/ioutil"
  5. )
  6. func LoadHTMLTemplate(filename string, funcMap ...template.FuncMap) (*template.Template, error) {
  7. var (
  8. tpl *template.Template
  9. err error
  10. )
  11. content, err := ioutil.ReadFile(filename)
  12. if err != nil {
  13. return nil, err
  14. }
  15. if len(funcMap) > 0 {
  16. tpl, err = template.New(filename).Funcs(funcMap[0]).Parse(string(content))
  17. if err != nil {
  18. return nil, err
  19. }
  20. } else {
  21. tpl, err = template.New(filename).Parse(string(content))
  22. if err != nil {
  23. return nil, err
  24. }
  25. }
  26. return tpl, nil
  27. }