反馈 — 扩展刷新后 main tab 变成浏览器默认页面¶
原文 / 原始内容¶
第一轮(一般描述):
"每次点击刷新后,主界面变成浏览器默认页面的,如何确保不出现这个情况?"
第二轮(补充关键信息):
"原本是正常的,点刷新就变了,id 是没变的" URL:
chrome://extensions/?id=cpfndhgkaaiiagfljpngcaajgbldekei
截图显示 3 个关键标记: 1. chrome://extensions 详情页 URL 含 id(id 没变) 2. 详情页右上角的 reload 按钮(用户点的就是这个) 3. 工作台主界面(用户点 reload 之前的状态)
上下文¶
- 加载来源:
~/文稿/01_Work/09_Code/05_google-map/dist-v2/chrome-mv3(指向本仓库) - Manifest name = 来发信谷歌地图数据采集专业版(本仓库)
- ⚠️ 但截图里 main.html 渲染的是"工作台/历史记录" UI ≠ 本仓库 src —— 用户当时 dist-v2 装着别的产物
- 不论装的是哪个项目的产物,问题机制是 Chrome 通用行为,本仓库也受影响
诊断关键¶
- ID 不变 → 排除 manifest.key 问题
- guard 是 5s 周期被动检测 → 有空窗期
- background.ts onInstalled 只处理 install,不处理 update/reload
处置¶
升 v0.10.34,在 background installListener 加 update 分支,SW ready 时主动 reload 本扩展所有 tab。
详见 [[0024-ext-reload-tab-becomes-newtab|0024-扩展reload后tab变newtab]]。