本章主要内容
- 模板以及模板引擎
- Go语言的模板库
text/template
和html/template
- 模板中的动作、管道以及函数
- 嵌套的模板与布局
Web模板就是一些预先设计好的HTML页面,名为模板引擎的软件程序会通过重复地使用这些页面来创建一个或多个HTML页面。Web模板引擎是Web应用框架的重要组成部分,绝大多数成熟的框架都会拥有相应的模板引擎:有一小部分框架的模板引擎是直接嵌入框架里面的,而其他绝大多数框架都允许用户像吃自助餐一样,根据自己的喜好选择相应的模板引擎。
Go语言也不例外——尽管Go还是一门相对较新的编程语言,但已经出现了一些使用Go语言构建的模板引擎;除此之外,Go的标准库也通过text/template
和html/template
这两个库为模板提供了强有力的支持,并且毫不意外地很多Go框架都使用了这两个库作为默认的模板引擎。
本章将对上面提到的两个库进行介绍,并说明如何使用它们生成HTML响应。