moegi-design / ghost-theme-Moegi

An elegant & fresh ghost theme.
https://notes.ljl.li
165 stars 26 forks source link

文章页使用 SSR 减少对 Ghost API 的依赖 #40

Closed ddiu8081 closed 3 years ago

ddiu8081 commented 4 years ago

背景

由于 Moegi-Theme 2 使用了前端框架配合 Ghost API 来动态获取数据,并没有使用 Ghost 标准的 handlebars 静态模板实现,这就导致站点的所有数据都需要 js 重新从接口获取,这就造成几个问题:

思路

由于 Ghost 会服务端渲染 handlebars 主题,所以可以通过利用渲染好的内容来读取内容,从而减少甚至取消对 API 的依赖。

准备采用的方法是将预渲染的内容标记好 id 后 hidden 掉,然后 js 中通过 id 获取内容插入到新的 DOM 树中。