2026-08-12 · 1 分钟阅读
Nuxt 3 静态博客:Markdown 与 Frontmatter
文章源文件放在仓库的 content/blog 里。构建时读取 Markdown frontmatter,就能拿到标题、日期、标签和摘要。
为什么用静态生成
个人博客没有实时评论流、没有编辑后台。文件就是数据源。部署一次,全站 HTML 预渲染完成。
下面是一个普通代码块,用 Shiki 做成 VS Code 同款高亮:
const { data: posts } = await useAsyncData("blog-posts", () =>
queryCollection("blog").order("date", "DESC").all(),
)
Frontmatter 约定
每篇文章顶部只保留这几项:
title标题date发布日期tags标签数组summary列表页摘要
阅读时长
按正文词数除以 200,至少 1 分钟。没有第三方统计。
目录从哪来
构建时扫描二级、三级标题,生成右侧 TOC。点击锚点即可跳转。