go语言模板引擎gotpl,新鲜出炉。https://github.com/codinl/gotpl

codin · 2015-08-06 02:16:02 · 5065 次点击 · 大约8小时之前 开始浏览    置顶
这是一个创建于 2015-08-06 02:16:02 的主题,其中的信息可能已经有所发展或是发生改变。

gotpl

go语言模板引擎。基于gorazor开发。

特性

  • 简洁优雅
  • 模板继承
  • 原生go语言
  • 模块,组件

原生go语句

@if .... {
    ....
}

@if .... {
    ....
} else {
    ....
}

@for .... {

}

@{
    switch .... {
    case ....:
          <p>...</p>
    case 2:
          <p>...</p>
    default:
          <p>...</p>
    }
}

模板继承(extends,block)

base.tpl :

<html>

@block aa {
    aaaa

    @block bb {
        bbb
    }

    @block cc {
        ccc
    }
}

@section Pagination(curPage int)

</html>

test_extends_base.tpl :

@block bb {
     extends bbb
}

@block cc {
     @for i:=0;i<10;i++ {
     <p>@i</p>
     }
}

文件名test_extends_base.tpl,代表test.tpl继承base.tpl。模板继承方式,类似django,通过覆盖block。

模块组件(section)

base.tpl :

<html>

...

@section Pagination(curPage int)

</html>

sections/page.tpl:

@{
    import (

    )
}

@section Pagination(curPage int) {
    <div>curPage is: @curPage </div>
}

section必须放在sections目录下,文件名不限制。

LICENSE

LICENSE? Well, WTFPL.

Todo


有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

5065 次点击  ∙  4 赞  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传