LOG
Blog Archive
博客文章 — Field Notes
-
我重新认识了一次 JavaScript 事件循环
从一道事件循环题出发,重新理解同步代码、微任务、await 续体与宏任务的执行顺序。
-
不用 React,不用 Hexo,我用 11ty
为什么个人网站不用 React/Next/Nuxt,也不用 Hexo——11ty 只做最基本的事,剩下的全部自己来。
-
配置驱动 CRUD——让 40 个列表页不再需要前端代码
手写列表页的尽头是复制粘贴。我在重构一个仓储管理系统时设计了一套 JSON 驱动的配置化引擎——这篇文章聊聊设计思路和取舍。
-
pnpm Monorepo 实战避坑指南
基于 Vue 3 + Vite + Turborepo 技术栈,独立搭建 9 个共享包的经验总结——从依赖地狱到工程化最佳实践。
-
HLS 和 DASH 的区别,不在 .m3u8 和 .mpd
从编码、封装、清单、分片、DRM 和延迟几个维度比较 HLS 与 DASH,而不是只列常见组合。
-
computed、watch、watchEffect 的选择,不是 API 记忆题
从派生值、显式侦听和自动追踪三个角度理解 Vue 的响应式 API,并处理异步、清理和竞态。
-
useMemo、useCallback、useEffect 不是同一类优化
从值的缓存、函数身份、外部同步三个角度讲清三个 Hook,并说明什么时候不该用它们。
-
为什么 '😊'.length 等于 2
从码点、UTF-8、UTF-16 代理对到字素簇,解释为什么字符串长度、截断和 emoji 处理总出问题。