Archive
时间线归档
在同一条时间轴语言中,分别查看公开笔记与个人成长轨迹。
Published Notes
博客笔记
Ionic 缓存页面里,URL 变化、页面显示和数据刷新为什么是三件事
从嵌套 Router Outlet、页面缓存和返回来源出发,复盘跨模块预览与列表刷新策略的边界。
修复 Bug 之后,怎样真正吃透相关代码
从状态来源、正常路径、框架生命周期和测试脚本四个角度,整理一次修复结束后继续读懂系统的方法。
付费页面里,入口参数为什么不能代替真实权益状态
复盘一次付费页面的状态错位:路由参数只说明用户从哪里来,真实权益仍应由可验证的数据源决定。
一个一直显示“生成中”的任务,为什么不能直接重新提交
从本地任务快照、服务端任务标识和恢复语义出发,复盘异步生成页面刷新后的安全恢复边界。
为什么 object-fit: contain 仍然会让视频控制条被裁切
从父级媒体舞台、video 元素盒子、固有尺寸(intrinsic size)与 overflow 出发,复盘一次低高度窗口中的原生控制条裁切问题。
把 AI 生图与生视频迁到 Web 时,真正需要迁移的是什么
复盘一次从移动端 AI 媒体生成业务迁移到 Vue Web 的过程:如何拆分平台能力、异步任务、图片与视频表单,以及跨路由草稿恢复。
一个聊天 TTS 按钮,为什么要拆成三层边界
从会话开关、消息是否可朗读到 App 后台播放,复盘 Ionic + Vue 聊天 TTS 的权限、内容与生命周期设计。
进入第一份开发实习后,我对真实项目协作的理解
从分支整合、产品规则确认、验证边界和提交范围出发,整理我进入真实项目后逐渐建立的协作方法。
一个两行修复,为什么从 Vue 一直追到了 Android 原生插件?
从正常与失败保存路径的第一次分叉出发,复盘一次跨越 Vue、Capacitor、Android MediaStore 和 Git 历史的媒体保存问题。
AI 图片与视频任务异常时,怎样建立一条完整证据链
从请求图片、任务 ID、轮询结果到最终资源,复盘移动端 AI 异步生成问题的前后端边界与排查方法。
如何整理一次实习问题,让它以后能写进简历和面试
把零散日报整理成问题、证据、方案、验证和边界五部分,让一次 Bug 排查沉淀为可以复述的工程经验。
Ionic + Capacitor 项目中,Android 和 iOS 的返回行为有什么区别
从 Android ionBackButton 到 iOS swipeBackEnabled,复盘混合应用中路由、全局弹窗和页面内弹窗的分层返回处理。
3000 条聊天记录下,怎样保持历史消息加载后的阅读位置
从 visibleStartIndex、scrollHeight 差值补偿到虚拟列表取舍,复盘 Android WebView 长聊天记录的阶段性优化。
一次 Android 返回手势问题的完整排查过程
从路由栈、组件弹窗和系统返回事件三个层次,复盘一次 Ionic 应用中 Android 返回行为的统一处理。
Ionic 缓存 Tab 中,怎样找到当前真正的滚动容器
从 iOS statusTap 需求出发,复盘 Ionic 页面缓存、嵌套 Tab、虚拟视频流和多种滚动容器的识别与策略分流。
虚拟列表中,为什么组件看得见却仍会被下一项遮挡
从真实内容高度、虚拟列表占位高度和 transform 布局语义,复盘一次只在 iOS 真机出现的模块遮挡问题。
心屿为什么需要多轮对话和轻量长期记忆
心屿为什么需要多轮对话和轻量长期记忆
Personal Path
个人轨迹
NEXT COORDINATE

