React Hooks: 计算属性与派生状态的重构指南
写 React 时,最容易让组件发胖的,不是网络请求,也不是动画,而是“多存了一点状态”。这篇文章中,我们会从“派生状态”问题入手,逐步拆解其中的设计问题与解决方式。
记录关于设计、技术与生活的美学思考。通过深度的叙述,寻找数字时代下的静谧角落。
写 React 时,最容易让组件发胖的,不是网络请求,也不是动画,而是“多存了一点状态”。这篇文章中,我们会从“派生状态”问题入手,逐步拆解其中的设计问题与解决方式。
React 开发中经常会遇到在闭包函数中打印出旧值的问题。这些问题表面上像是 React 的坑,实际上,它们是 JavaScript 闭包和 React 按渲染快照工作这两件事,叠加在一起的结果。
useEffect 本来是 React 给你的一个“逃生舱”,用来同步外部系统,结果很多人把它当成了组件内部逻辑的总调度室。先记住一句判断标准:如果这里没有“外部系统”参与,那你通常就不需要 Effect。
随着时间的推移,很多人使用 React Hooks 的体验,会从清爽慢慢转换为越来越乱。在这篇文章中,我会分析产生混乱的原因,并给出有效的使用指导。
Ponytail 是一个开源 AI 插件,让你的编码助手像“懒惰资深工程师”那样思考,用标准库和现有能力优先解决问题,把多余的代码都省掉。
当工具越来越多,这时候单靠「Vercel AI SDK Tool」这一层,就开始吃力了。这篇文章,我们不急着上 MCP,先把「纯 Tool 架构」会遇到的问题摊开来讲清楚。
Reasonix 是专为 DeepSeek API 设计的终端 AI 编码 agent。它不是通用的 AI 助手套壳,而是深度利用了 DeepSeek 的 prefix caching(前缀缓存)机制,采用 cache-first 架构,将重复上下文的成本降到极致。
Vercel AI SDK 里的 Tool 是什么?你可以先把 Tool 理解为:一个「带说明书的函数」,说明书是给模型看的,函数体是给你自己的代码看的。
Skill(或 Skills)可以理解为给 AI Agent 准备的“可复用技能包”。它通常是一个文件夹,里面放着任务说明、脚本、模板和参考资料,AI 在处理相关任务时会按需加载这些内容,从而更稳定、可重复地完成特定工作。