
实战:从零做一个博客管理端页面
综合前九篇,从零做出可运行的博客管理端:登录、列表、编辑、删除、主题切换,并接上真实 API 与构建部署。
RTag / #engineering

综合前九篇,从零做出可运行的博客管理端:登录、列表、编辑、删除、主题切换,并接上真实 API 与构建部署。

从统一 fetch 封装到 TanStack Query:QueryClient 配置、queryKey、失效与分页,把数据层从页面组件里抽出来。

内容一保存就触发全站构建,既慢又容易互相覆盖。本文讲清防抖、手动构建取消、SSE 状态推送和原子切换如何保证发布一致性。

自托管博客的选型不是「用什么框架」,而是「把哪些能力留在服务端」。本文对比常见方案,说明 Go + Astro + React 管理端这套组合的取舍。

@Transactional 失效大多不是玄学:自调用、异常回滚规则、长事务和领域事件时机都有明确边界。本文逐条给出可复现的示例与修法。

Controller、DTO、Service、Repository 各自承担什么,决定了项目后期好不好改。本文用 Spring Boot 3 落地一套清晰的分层与异常处理边界。

线上排障最怕「日志对不上请求」。本文讲清 RequestID 如何在中间件、日志和错误映射之间传递,以及为什么未知错误只对外暴露 500。

手写前端类型迟早会和后端契约漂移。本文从 OpenAPI 3.1 出发,走通类型生成、SDK 封装和 CI 校验,让接口变更在编译期暴露。

富文本与 Markdown 双写,真正难的不是格式转换,而是状态归属。本文讨论 Tiptap 的受控策略、自动保存与乐观锁如何配合,避免光标跳动与内容覆盖。

管理后台的请求不是越简单越好:缓存粒度、失效范围、乐观更新和 401 重试各自该放在哪一层。本文用 TanStack Query 拆解一套可维护的请求边界。