feat(frontend): Add Progressive Web App (PWA) support. Includes a service worker for offline capabilities, a web manifest, and icons for a native-like, installable app experience

This commit is contained in:
2025-07-28 19:46:46 +08:00
parent 59d0ae2a88
commit d85b531e24
8 changed files with 74 additions and 3 deletions

View File

@@ -1,5 +1,6 @@
import { createApp } from 'vue'
import App from './App.vue'
import './assets/main.css' // 引入新的全局样式文件
import './registerServiceWorker'
createApp(App).mount('#app')

View File

@@ -0,0 +1,32 @@
/* eslint-disable no-console */
import { register } from 'register-service-worker'
if (process.env.NODE_ENV === 'production') {
register(`${process.env.BASE_URL}service-worker.js`, {
ready () {
console.log(
'App is being served from cache by a service worker.\n' +
'For more details, visit https://goo.gl/AFskqB'
)
},
registered () {
console.log('Service worker has been registered.')
},
cached () {
console.log('Content has been cached for offline use.')
},
updatefound () {
console.log('New content is downloading.')
},
updated () {
console.log('New content is available; please refresh.')
},
offline () {
console.log('No internet connection found. App is running in offline mode.')
},
error (error) {
console.error('Error during service worker registration:', error)
}
})
}