内容分类

编程笔记

返回全部文章
编程笔记
Taro 微信小程序实时倒计时跳秒与节点累积排查
复盘 Taro 微信小程序实时倒计时跳秒、多端相差数秒和 fixed 覆盖层节点持续累积的问题:解释逐秒广播为什么不等于时钟,用服务端截止时间与 RTT 中点校时统一时间轴,把 0 建模为完整刻度,并通过单一宿主节点避免动画更新反复追加视图。
编程笔记
Taro 微信小程序中文字体裁剪与源码内联
记录在 Taro 微信小程序中引入少量中文展示字体的完整方案:用 Node 与 subset-font 从 Noto Sans CJK SC Black 裁出固定字符,校验上游文件后生成内联 WOFF CSS,将约 17.8 MB 的源字体缩到 5 KB,并说明字符维护、授权保留和真机验证边界。
编程笔记
Taro 4.2.1 使用 Vite 构建微信小程序时 common.js 为什么这么大
复盘 Taro 4.2.1 使用 Vite 构建微信小程序时 common.js 接近 855 KiB 的排查过程:从 Rollup 分块源码确认公共代码的来源,并通过构建前后文件对比说明 optimizeMainPackage 在当前 Vite 构建链中没有产生预期效果。
编程笔记
Protobuf 与 Buf 实战:TypeScript WebSocket 服务端发送与客户端接收
记录如何用 Protobuf、Buf 和 ts-proto 为 TypeScript WebSocket 生成客户端与服务端类型,并完成二进制消息的编码发送、ArrayBuffer 接收解码、oneof 分发和字段安全演进,同时说明 optional、int64、默认值与 reserved 的常见误区。
编程笔记
实时追加列表为什么使用游标分页
记录一次实时追加列表的分页设计:为什么 OFFSET 在新数据持续插入时会重复或漏项,怎样用自增 ID 作为 Keyset Cursor 稳定加载旧记录,以及如何用 pageSize + 1 判断 hasMore,避免额外 COUNT 和空页请求。
编程笔记
创建表单为什么会发出 PATCH /undefined
复盘一个 React/Taro 共用表单把初始发布误判为编辑、最终请求 PATCH /resources/undefined 的问题:如何从请求方法和载荷确认分支,用可辨识联合约束子组件属性,判断客户端状态检查的合理位置,并避免把局部修复扩张成全局 ID 校验。
编程笔记
Bun Worker:TypeScript 服务端的本地调试与生产运行
记录 Bun TypeScript 服务端为解决 Worker 无法在 VS Code 命中断点而形成的双运行结构:调试时通过 RUN_WORKER_IN_MAIN 把同一循环放回主线程,生产仍使用独立 Worker,并说明 isMainThread、postMessage、双入口构建与 Docker 启动。
编程笔记
微信真机不支持 \p{Script=Han}:一个正则兼容坑
记录一次微信小程序真机正则兼容问题:开发者工具可以运行的 `\p{Script=Han}`,在真机 JavaScript 运行时却抛出 `Invalid property name`。文章说明这种 Unicode 属性转义为什么会在目标环境失效、怎样改用明确的汉字区间,以及必须保留该语法时如何做能力检测。
编程笔记
Taro 小程序认证竞态:一次修错方向的复盘
用完整代码复盘 Taro 小程序冷启动认证竞态:useLaunch 登录为何报找不到页面实例,App.onShow 刷新为何制造数据库写入,以及认证屏障、401 单飞续期、无状态 JWT 和角色同步应当怎样配合,并给出可直接落地的客户端与服务端代码。