新开了文学板块,把公众号的 40 篇文章全部迁移到了博客。技术上复用了 posts 的数据类型和渲染逻辑,新增了 literatureDirectory 和 getAllLiterature 函数,路由结构保持 /literature/[slug] 的一致性。
比较有意思的一点是 TypeScript 里 slugRegistry={} 和 slugRegistry={new Map()} 的类型推断差异——前者会被推断为 readonly {} 而非 Map,导致编译错误。