feat(pwa): 补齐 web 端 PWA 可安装条件

- 新增 192/512 图标与 maskable 变体(源自 icon.png,安全区 80%)
- manifest.json 图标声明修正(原先仅声明一个实际不存在的 256 尺寸)
- 注册最小 Service Worker(空 fetch 处理器,不做缓存拦截),仅 Web 生产环境生效

Closes #640
Ref #382
This commit is contained in:
alger
2026-07-05 15:06:19 +08:00
parent 4b6303f557
commit 6e69676766
6 changed files with 36 additions and 2 deletions
+10
View File
@@ -8,10 +8,20 @@ import { createApp } from 'vue';
import i18n from '@/../i18n/renderer';
import router from '@/router';
import pinia from '@/store';
import { isElectron } from '@/utils';
import App from './App.vue';
import directives from './directive';
// Web 端注册最小 Service Worker,使站点满足 PWA 可安装条件(#640/#382
if (!isElectron && import.meta.env.PROD && 'serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/sw.js').catch((error) => {
console.warn('[PWA] Service Worker 注册失败:', error);
});
});
}
const app = createApp(App);
Object.keys(directives).forEach((key: string) => {