组件分享之后端组件——基于Go语言的HTML和CSS网站生成器Hugo

Python014

组件分享之后端组件——基于Go语言的HTML和CSS网站生成器Hugo,第1张

近期正在探索前端、后端、系统端各类常用组件与工具,对其一些常见的组件进行再次整理一下,形成标准化组件专题,后续该专题将包含各类语言中的一些常用组件。欢迎大家进行持续关注。

本节分享一个基于Go语言的HTML和CSS网站生成器 hugo ,它针对速度、易用性和可配置性进行了优化。Hugo 获取一个包含内容和模板的目录,并将它们呈现为一个完整的 HTML 网站。Hugo 依赖于 Markdown 文件和元数据的前端,你可以从任何目录运行 Hugo。这适用于您没有特权帐户的共享主机和其他系统。例如我们日常编写一些博客文章,进行快速生成一套静态页面进行分享时可以使用它来进行生成一套静态页面作为我们的博客部署基础。

它支持大量的主题模板,我们可以通过 https://themes.gohugo.io/ 进行选择相关的主题使用,有兴趣的小伙伴可以进行深入研究一下

Revel Web开源框架

个高效的Go语言Web开发框架, 其思路完全来自 Java 的 Play Framework。

特点

热编译,简单可选,同步(每个请求都创建自己的goroutine来处理。

Go语言Web框架:beego

一个用Go开发的应用框架,思路来自于tornado,路由设计来源于sinatra。

支持特性

MVC;

REST;

智能路由;

日志调试;

配置管理;

模板自动渲染;

layout设计;

中间件插入逻辑;

方便的JSON/XML服务;

Go语言模板文件可以引入js文件或css文件,但是在引入的过程中,需要注意以下几点:

1. 引入的文件路径应该是相对路径,而不是绝对路径。

2. 在引入js文件时,需要使用{{ url }} 模板函数,用来拼接路径, 这样可以更好的兼容不同的路径。

3. 如果是在统一的文件夹中的js文件,最好使用{{ static }}模板函数,这样可以更好的节省路径长度。

4. 在引用js文件时,需要在页面底部,可以使用{{ template }}模板函数,这样可以保证js文件在页面加载完成之前就被加载。

总之,使用Go语言模板文件引入js文件,需要注意路径的相对性,并且使用模板函数来拼接路径,这样可以更好的兼容不同的路径,从而保证引用js文件的正确性。