Как использовать сервисных работников в рамках Quasar (Vue.js)

#javascript #vue.js #progressive-web-apps #service-worker #quasar-framework

Вопрос:

Поэтому я создаю мобильный PWA, построенный с конденсатором для Android и iOS, и я хочу интегрировать сотрудника службы для обработки входящих push-уведомлений от firebase, пока приложение закрыто. Я до сих пор следовал этому учебнику по firebase, но я уже действительно не знаю, с чего начать… может быть, это потому, что я довольно новичок в PWA и совершенно новичок в сфере обслуживания, я не знаю.

Я использую фреймворк Квазара с Vue.js 2. Моя структура папок выглядит следующим образом:

ссылка на изображение

мой «regster-service-worker.js» был инициализирован квазаром как это:

 import { register } from 'register-service-worker'

// The ready(), registered(), cached(), updatefound() and updated()
// events passes a ServiceWorkerRegistration instance in their arguments.
// ServiceWorkerRegistration: https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration

register(process.env.SERVICE_WORKER_FILE, {
  // The registrationOptions object will be passed as the second argument
  // to ServiceWorkerContainer.register()
  // https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/register#Parameter

  // registrationOptions: { scope: './' },

  ready (/* registration */) {
    console.log('Service worker is active.')
  },

  registered (/* registration */) {
    console.log('Service worker has been registered.')
  },

  cached (/* registration */) {
    console.log('Content has been cached for offline use.')
  },

  updatefound (/* registration */) {
    console.log('New content is downloading.')
  },

  updated (/* registration */) {
    console.log('New content is available; please refresh.')
  },

  offline () {
    console.log('No internet connection found. App is running in offline mode.')
  },

  error (/* err */) {
    console.error('Error during service worker registration:', err)
  }
})
 

Так что, как я уже сказал, я действительно не знаю, с чего начать. Я просмотрел документацию mozilla, которая предлагает мне другой подход к этому, как я видел в других местах, например, в учебнике, приведенном выше. И прежде чем я снова начну кодировать случайные вещи вместе и завтра потрачу много времени на работе, я лучше спрошу вас, ребята, здесь сегодня и надеюсь на полезные ответы от вас.

Если вам нужна какая-либо дополнительная информация, просто оставьте комментарий. Заранее спасибо! :))

Комментарии:

1. Почему вы остаетесь на VueJS2 вместо версии 3 ?