Skip to content

Conversation

@cyfung1031
Copy link
Collaborator

概述 Descriptions

Error message in waitInit

Screenshot 2025-12-02 at 10 26 25

No "!" in Badge Icon

Screenshot 2025-12-02 at 10 30 30

变更内容 Changes

chrome.userScripts.xxx -> chrome.userScripts?.xxx for some lines (e.g. inside waitInit)

截图 Screenshots

@cyfung1031 cyfung1031 added the hotfix 需要尽快更新到扩展商店 label Dec 2, 2025
@CodFrm CodFrm added the P0 🚑 需要紧急处理的内容 label Dec 2, 2025
@CodFrm
Copy link
Member

CodFrm commented Dec 2, 2025

// 检查是否开启了开发者模式
if (!this.isUserScriptsAvailable) {
// 未开启加上警告引导
this.showNoDeveloperModeWarning();
}

checkUserScriptsAvailable 的逻辑在 waitInit 是不是更好点

@cyfung1031
Copy link
Collaborator Author

cyfung1031 commented Dec 2, 2025

// 检查是否开启了开发者模式
if (!this.isUserScriptsAvailable) {
// 未开启加上警告引导
this.showNoDeveloperModeWarning();
}

checkUserScriptsAvailable 的逻辑在 waitInit 是不是更好点

waitInit 和 checkUserScriptsAvailable 可以分开独立执行
能异步的都分开处理加速载入

你会看到
initReady
是好几个 Promise

      // 取得初始值 或 等待各种异步同时进行的初始化 (_1, _2, ...)
      const [isUserScriptsAvailable, isLoadScripts, strBlacklist, _1, _2, _3] = await Promise.all([
        checkUserScriptsAvailable(),
        this.systemConfig.getEnableScript(),
        this.systemConfig.getBlacklist(),
        this.loadingInitFlagsPromise, // messageFlag 初始化等待
        this.loadingInitProcessPromise, // 初始化程序等待
        this.initUserAgentData(), // 初始化:userAgentData
      ]);

设计上,waitInit 能比其他异步更前执行
它不需要理会 checkUserScriptsAvailable 的结果

而且功能上,不论 checkUserScriptsAvailable 结果是什么
它都要尝试反注册
不会依赖 checkUserScriptsAvailable 里面的逻辑
总之能呼叫反注册就呼叫反注册,不理会呼叫有否成功
极端来说,假如有 禁止注册 但可以 反注册 的情景,checkUserScriptsAvailable会回传 false, 而waitInit里会尝试反注册

是不同的逻辑


還有不要大改1.2 這塊啦
Hotfix了就處理1.3
你看我commit都只是加幾個 「?」就算了
正如你所講,不斷有新bug的話沒完沒了
你想改次序,改完又測試不足,又一堆問題

@CodFrm CodFrm merged commit 4f2deda into scriptscat:main Dec 2, 2025
3 checks passed
@CodFrm
Copy link
Member

CodFrm commented Dec 2, 2025

還有不要大改1.2 這塊啦 Hotfix了就處理1.3 你看我commit都只是加幾個 「?」就算了 正如你所講,不斷有新bug的話沒完沒了 你想改次序,改完又測試不足,又一堆問題

当然不在v1.2大改了,只是提一下,可以在v1.3后续处理

cyfung1031 added a commit that referenced this pull request Dec 5, 2025
* fix: userScripts is undefined when permission is not granted yet

* Update runtime.ts
@CodFrm
Copy link
Member

CodFrm commented Dec 16, 2025

加?没有用,依旧报错(Edge),我处理一下了:

image image

我先加catch,v1.3再改动顺序看看

@cyfung1031
Copy link
Collaborator Author

加?没有用,依旧报错(Edge),我处理一下了:

try{ ... } finally { ... } 改成 try{ ... } catch {...} finally { ... } 就能解决了吗?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

hotfix 需要尽快更新到扩展商店 P0 🚑 需要紧急处理的内容

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants