内容分类
编程笔记
记录一次将小程序协议 Markdown 从源码内置改为运行时加载的开发过程:最初绕到对象存储、版本清单和 JSON 包装,最后收敛为启动 config 下发路径、Hono/Bun serveStatic 直接提供文件。文章也说明 MIME 类型、Docker 复制和旧客户端兼容这些容易漏掉的细节。
一次 Taro 前台分页改造记录:从用单页条数猜测是否还有下一页,到发现列表接口每次返回 total 会重复执行 COUNT,最后将列表与总数拆成两个接口,并按筛选条件缓存总数,减少空页请求和翻页开销,同时说明排序、搜索、缓存键和新旧客户端的发布顺序。
记录 Taro 微信小程序中两类容易忽略的图片请求:弹窗只用透明度隐藏时 Image 仍会加载,Swiper 一次挂载全部子项时也会批量请求。文章给出条件渲染、相邻图片窗口、全屏预览 URL 复用、视频延迟挂载及微信开发者工具网络面板验证方法,适合排查页面未操作却产生流量的问题。
从 TypeScript 源码为何用 .js 后缀导入 .ts 文件说起,比较 NodeNext 与 Bundler 的模块解析目标,解释 Node 原生 ESM、rewriteRelativeImportExtensions 和构建器改写后缀的关系,并说明 Next.js、Bun 项目选择 Bundler 的理由。
说明 Electron 应用恢复上次工作区时,为什么不能只验证配置文件已经写入,而要检查用户选择、持久化存储、下次启动读取、session partition、页面 origin 与前端状态应用的完整链路。文章总结 profile 目录不能充当业务接口的原因,并给出定位重启后工作区没有真正恢复的分层排查方法。
梳理 Electron 离线授权与发布包加固的真实边界,分别说明 ASAR、源码裁剪、Electron fuses、safeStorage、公钥签名验签和主进程能力校验能防什么、不能防什么。文章给出授权令牌签发与验证链路、设备绑定和错误处理原则,避免把压缩打包误当成防破解,也避免在 renderer 中暴露关键能力。
记录现代 Web 站点在 Next.js 中优化明暗主题、首屏闪烁、移动浏览器 theme-color、分页入口、Link 预取和不可用控件语义的实现方案。文章说明 next-themes 的服务端与客户端边界、系统主题跟随方式、预取带来的请求成本,以及按钮、链接和 aria 属性如何共同保证移动端体验与可访问性。
记录 Electron 桌面端通过 koffi 调用 Win32 API 辅助控制第三方浏览器的实现边界,涵盖窗口查找与激活、键鼠输入、剪贴板、本地配置和 FFI 隔离。文章比较桌面自动化与 DOM 控制、UI Automation 的差异,并说明 main、preload、renderer 各层应承担的能力。