Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

484
Views
PWA: la interfaz no se actualiza incluso después de una actualización completa
  • A continuación se muestra la configuración denuestra configuración nuxt y nuxt-pwa .
  • Nuxt pwa está reconociendo una nueva versión disponible y solicitamos al usuario que realice una actualización/recarga completa.
  • Y al recargar, la nueva interfaz de usuario también comienza a funcionar.
  • Sin embargo, si abrimos el sitio en una nueva pestaña. Se muestra una rueda giratoria y la última interfaz no se carga. Y nuevamente, se requiere una actualización completa.
    • nuestra interfaz redirige a /dashboard al visitar localhost:8080 de forma predeterminada y esto se carga desde serviceworker con datos en caché.
    • Ayúdenos a resolver esto, ya que ha sido un problema crítico para nosotros.

Captura de pantalla 2021-12-07 en 10 04 35

Spinner visto en la apertura de una nueva pestaña: Captura de pantalla 2021-12-07 en 10 01 47

Captura de pantalla 2021-12-07 a las 10 01 40

 export default { ssr: false, target: 'static', head: { titleTemplate: '', title: 'NocoDB', meta: [ { charset: 'utf-8' }, { name: 'viewport', content: 'width=device-width, initial-scale=1' }, { hid: 'description', name: 'description', content: process.env.npm_package_description || '' } ], link: [ { rel: 'icon', type: 'image/x-icon', href: './favicon-32.png' } ] }, plugins: [ // plugins ], buildModules: [ '@nuxtjs/vuetify', '@nuxtjs/pwa' ], modules: [ // Doc: https://axios.nuxtjs.org/usage '@nuxtjs/axios', 'vue-github-buttons/nuxt', '@nuxtjs/toast' ], axios: { baseURL: process.env.NC_BACKEND_URL || (process.env.NODE_ENV === 'production' ? '..' : 'http://localhost:8080') }, router: { mode: 'hash', base: process.env.NODE_ENV === 'production' ? './' : '', middleware: ['auth'] }, vuetify: { defaultAssets: { icons: false }, optionsPath: '@/config/vuetify.options.js', treeShake: true, customVariables: ['./config/variables.scss'] }, build: { parallel: true, plugins: [ new MonacoEditorWebpackPlugin({ languages: ['sql', 'json', 'javascript'], features: ['!gotoSymbol'] }) ], extend(config, { isDev, isClient }) { if (isDev) { config.devtool = isClient ? 'source-map' : 'inline-source-map' } config.externals = config.externals || {} config.externals['@microsoft/typescript-etw'] = 'FakeModule' return config } }, pwa: { workbox: { assetsURLPattern: /\/_nuxt\//, config: { debug: true } }, icon: { publicPath: './' }, manifest: { name: 'NocoDB', start_url: '../?standalone=true', theme_color: '#ffffff' } } }

Informe del faro: Captura de pantalla 2021-12-07 a las 10 00 00

Referencia del problema de Github: https://github.com/nuxt-community/pwa-module/issues/501

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Debe configurar el trabajador de servicio que borra el caché según las versiones. Configure service-worker.js como se muestra a continuación. y actualice LATEST_VERSION en los cambios que implemente.

 // service-worker.js importScripts("https://storage.googleapis.com/workbox-cdn/releases/4.3.1/workbox-sw.js"); workbox.core.setCacheNameDetails({ prefix: 'pwa' }) //Change this value every time before you build to update cache const LATEST_VERSION = 'v1.0.1' self.addEventListener('activate', (event) => { console.log(`%c ${LATEST_VERSION} `, 'background: #ddd; color: #0000ff') if (caches) { caches.keys().then((arr) => { arr.forEach((key) => { if (key.indexOf('pwa-precache') < -1) { caches.delete(key).then(() => console.log(`%c Cleared ${key}`, 'background: #333; color: #ff0000')) } else { caches.open(key).then((cache) => { cache.match('version').then((res) => { if (!res) { cache.put('version', new Response(LATEST_VERSION, { status: 200, statusText: LATEST_VERSION })) } else if (res.statusText !== LATEST_VERSION) { caches.delete(key).then(() => console.log(`%c Cleared Cache ${LATEST_VERSION}`, 'background: #333; color: #ff0000')) } else console.log(`%c Great you have the latest version ${LATEST_VERSION}`, 'background: #333; color: #00ff00') }) }) } }) }) } }) workbox.core.skipWaiting(); workbox.core.clientsClaim(); self.__precacheManifest = [].concat(self.__precacheManifest || []) // workbox.precaching.suppressWarnings() workbox.precaching.precacheAndRoute(self.__precacheManifest, {})
over 4 years ago · Santiago Trujillo Report

0

No sé para nuxt, pero para angular necesitamos actualizar el elemento de version de ngsw-config.json en cada implementación (1, 2, 3, ...) y también llamar a SwUpdate.checkForUpdate() al inicio. Solo entonces se recuperará la nueva versión de la aplicación del servidor.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!