()
| 502 | |
| 503 | // 从数据库加载所有数据(仅在初始化时调用一次) |
| 504 | async function initializeData(): Promise<void> { |
| 505 | if (isInitialized.value) { |
| 506 | return |
| 507 | } |
| 508 | |
| 509 | try { |
| 510 | // 先加载禁用指令列表和指令列表,再加载历史记录和固定列表(历史记录清理需要依赖指令列表) |
| 511 | await Promise.all([ |
| 512 | loadDisabledCommands(), |
| 513 | loadDisabledPlugins(), |
| 514 | loadDisabledMainPushPlugins() |
| 515 | ]) |
| 516 | await loadCommands() |
| 517 | await Promise.all([ |
| 518 | loadHistoryData(), |
| 519 | loadPinnedData(), |
| 520 | loadSearchPreference(), |
| 521 | loadSuperPanelPinnedData() |
| 522 | ]) |
| 523 | |
| 524 | // 监听后端历史记录变化事件 |
| 525 | window.ztools.onHistoryChanged(() => { |
| 526 | loadHistoryData() |
| 527 | }) |
| 528 | |
| 529 | // 监听指令列表变化事件(应用文件夹变化、插件变化时触发) |
| 530 | window.ztools.onAppsChanged(() => { |
| 531 | loadCommands() |
| 532 | }) |
| 533 | |
| 534 | // 监听本地启动项变化事件(添加/删除/别名修改时触发,无需重新扫描系统应用) |
| 535 | window.ztools.onLocalShortcutsChanged(() => { |
| 536 | reloadLocalShortcuts() |
| 537 | }) |
| 538 | |
| 539 | // 监听固定列表变化事件 |
| 540 | window.ztools.onPinnedChanged(() => { |
| 541 | // 如果是本地触发的更新,忽略此事件,避免重复加载 |
| 542 | if (isLocalPinnedUpdate) { |
| 543 | isLocalPinnedUpdate = false |
| 544 | return |
| 545 | } |
| 546 | loadPinnedData() |
| 547 | }) |
| 548 | |
| 549 | // 监听超级面板固定列表变化事件 |
| 550 | window.ztools.onSuperPanelPinnedChanged(() => { |
| 551 | loadSuperPanelPinnedData() |
| 552 | }) |
| 553 | |
| 554 | // 监听禁用指令列表变化事件 |
| 555 | window.ztools.onDisabledCommandsChanged(() => { |
| 556 | loadDisabledCommands() |
| 557 | }) |
| 558 | |
| 559 | // 监听指令别名变化事件,仅基于当前缓存重建 alias 展开,避免重复扫描系统应用。 |
| 560 | window.ztools.onCommandAliasesChanged(() => { |
| 561 | reloadCommandAliases() |
nothing calls this directly
no test coverage detected