跳到主要内容
返回

准备迁移到 Astro (完成)

发布于:更新于:
编辑页面

又重写了一遍博客主题,写着写着发现了 Astro,觉得应该比 Gatsby 更好用。
于是,决定把这个半成品主题迁移到 Astro。


摸了几个月鱼,终于迁移到至少能用的程度了,不知道又会冒出来多少 bug。
体验下来,对这个项目而言 Astro 确实比 Gatsby 好用,其它的项目没经验不敢断言。

在获取数据方面,Astro 在 .astro 文件里非常直观方便

---
//这段代码会在服务端执行
const text1 = await fetch('https://api.xxx.xxx')
const text2 = await readFile('1.txt')
//...
---
<div>{text}</div>
<div>{text2}</div>
<!-- ... --->

而在 Gatsby, 要么你使用插件,将数据带到 GraphQL 数据层,使用时编写语句查询,要么在 gatsby-node.js 里创建页面使用 context 参数。

对 md 文件的处理, Astro 比 Gatsby 方便得多。Astro 原生使用 remark, Gatsby 通过插件 gatsby-transformer-remark, 这没有什么问题,问题是 Gatsby 不能直接使用 remark 的插件,你需要包装成插件 gatsby-transformer-remark 的插件 gatsby-remark-*。 另外 Astro 将 md 转换为 HTML 后还会经过 rehype,支持直接使用 rehype 的插件,Gatsby 也有相关插件, 但已经很久都没有更新。 (你可以再为 Gatsby 造一个轮子,实现这些功能)

…todo


更新日志

todo


编辑页面

上一篇
使用 dm-crypt 加密 archLinux 根分区
下一篇
使用 FreshRSS 实现友人最近文章 API

加载中...