«Неудержимый» работник службы в PWA? - PullRequest
0 голосов
/ 20 сентября 2019

Я хочу написать автономное веб-приложение, и теперь у меня много кода, работающего так:

recursiveTimeout = setTimeout(function showNotification(){
    // Here is much logic and work with indexeddb
    // registration.showNotification(...)
    recursiveTimeout = setTimeout(showNotification, interval)
}, 0)

Я подумал, что если я добавлю этот код в сервисный работник, он будет работатьбесконечно.Я был не прав :) Срок службы работника слишком короткий.Но мне это нужно, чтобы не останавливаться.Итак, вопрос в том, могу ли я использовать PWA для своих целей?Мне нужна любая платформа для этого кода, но JS - единственный язык, который я знаю.

1 Ответ

0 голосов
/ 21 сентября 2019

Сервисные работники прекратят выполнение вскоре после выполненной работы и будут перезапущены, когда новое событие будет готово для них.Вы не можете изменить это.Если вам нужно выполнять постоянную работу на устройстве, вам придется использовать собственное приложение или оболочку приложения, например Capacitor .

...