先写测试,再往一个页面里塞 160 个工具
把注册段与渲染段分开测、桩对象给到刚好够用、按特征把环境噪音与真缺陷分桶,最后修的是工具而不是桩。
首页 / 日志
LOG
把取舍写下来,比把功能列出来有用。
发布记录与工程手记:这套站点是怎么一版版长出来的。共 8 篇 —— 每一篇都是当时真实的取舍,包括踩坏的那些。
想订阅?RSS 订阅源(feed.xml,全站通用阅读器都能收)。
把注册段与渲染段分开测、桩对象给到刚好够用、按特征把环境噪音与真缺陷分桶,最后修的是工具而不是桩。
manifest 的 scope 写错会装出别人的首页;缓存策略要按导航、静态资源、SW 自身分三类;skipWaiting 会刷掉用户正在写的内容。
浅色主题不是反转颜色:对比度要重新算,组件要有自己的浅色规则,工具箱这种「另写一套样式」的地方最容易漏掉主题。
工具箱第一版有十一个工具,其中三个有 bug:进制转换会把 1.5 当整数、颜色框每次输入都被回写吞掉、JSON 复制多带一行提示语。 现在的做法是给纯函数写用例:从 tools.js 里按大括号配对抽出真实函数,跑 2
最早这四个仓各写各的,样式重复三份,版本号写死在 HTML 里,Releases 上明明只有 v1.0.0,页面却写 v4.0.2。 改法很朴素:样式抽成一套 token,版本号只从 Releases API 读,读不到
工具站的检查工作流提交后一直不跑,Actions 里连一条 run 都没有。原因是文件被 PowerShell 写成了 GBK,GitHub 解析不出 YAML 结构,于是悄悄忽略了它。 教训写进了决策日志:仓库里的文件
软件库的十个应用都遵守同一条底线:数据只在浏览器里、没有账号、没有埋点、断网可用。 加密类用 WebCrypto(PBKDF2 十五万轮 + AES-GCM),媒体类用 Canvas 与 MediaRecorder,记录
一条命令把搜索索引里的关键词全清了,而所有测试仍然是绿的 —— 因为没人断言「关键词还在」。