Автор оригинала: FreeCodeCamp Community Member.
Каждый теперь мы слышим о оптимизации чего-либо. Существуют различные виды оптимизаций, которые мы можем сделать, чтобы сделать наши приложения быстрее и эффективнее или сэкономить время или память. Эта статья будет охватывать одну из этих методов – S ERVICE W orkers.
TL; доктор
Это руководство объясняет, что a Сервисный работник Есть и как его использовать, в JavaScript. В конце этого есть код кода. Если вы хотите пропустить чтение, здесь это Git Repo и здесь Вы можете увидеть живую демонстрацию.
Теория
Давайте посмотрим сначала, что a w orker это ? а что погиб ERVICE Можем ли мы использовать это для?
Сервисный работник это Простой скрипт Отказ Это код JavaScript, который ваш браузер работает на заднем плане, отдельно от веб-страницы.
Очень удобно пользоваться услугами работников для функций, которые не нуждаются в веб-странице или взаимодействии пользователя. Одним из наиболее распространенных целей является перехватывание и обработка сетевых запросов. Это включает в себя управление кэшем ответов.
Ниже приведен простой пример того, как включить сервисный работник в вашем приложении.
Обычно в точке входа вашего приложения вы добавляете этот код:
if ('serviceWorker' in navigator) { window.addEventListener('load', function() { navigator.serviceWorker.register('/service-worker.js'); }); }
Этот способ использования сервисных работников немного улучшен, чем основной. Основной метод включает в себя непосредственно вызов Регистрация () Метод внутри если заявление. В этом случае мы используем событие окна нагрузки для регистрации сервисного работника после завершения страницы. После этого вам нужно добавить код вашего обслуживания в Service-Worker.js файл. На данный момент вы можете взглянуть на мой сервисный работник.
Все основные браузеры поддерживают обслуживание работников сейчас, и вы можете начать использовать их сразу.
Пример
Достаточно теории, давайте построим настоящее примерное пример, которое будет использовать функцию работников обслуживания.
Давайте представим, что мы строим приложение, которое необходимо загрузить большую кусок данных. Это может быть, например, хороший, большой полноэкранный образ мыследие на первой странице. Или это может быть большой видеоклип, который мы должны ждать, чтобы загрузить. Это идеальное использование для сервисного работника для сияния. Давайте посмотрим, как. ?
В нашем конкретном случае мы будем использовать время на часы, чтобы показать преимущество использования обслуживающих работников. То, что я имею в виду, что мы построим простое приложение, показывающее время. У него будет хорошая, большая кнопка для получения приятного, большого изображения. И он предоставит пользователю возможность выбрать использовать или нет сервисный работник.
Вот скриншот того, как это выглядит:
Что демонстрирует это приложение, то, что при выходе на изображение (нажав кнопку, WOW!) С помощью активного сервисного работника – мы не заблокированы UI (пользовательский интерфейс, I.E. поля, кнопки?). Если вы решите не использовать сервис-работника, вы получите замороженный пользовательский интерфейс в течение определенного периода времени. Когда работа завершается и основной нить оправдают сам, он будет разморозить пользовательский интерфейс.
Если вы не хотите клонировать и запустить код себя, прыгайте прямо к Живая демонстрация Отказ
Заключение
Эта демонстрация обслуживающих работников в действии показывает нам преимущество, которое мы получаем от их использования. Особенно, когда вы пытаетесь создать адаптивные и надежные приложения JavaScript. Ни один пользователь не хочет в конечном итоге на замороженной странице в течение неизвестного времени, так как разработчик не должен захотеть, чтобы для пользователей его приложения. В виду вышеупомянутые, обслуживающие работники являются * должны * теперь. И мы не должны пренебрегать их.
? Спасибо за прочтение! ?