Для работы с sw-precache первым шагом является его установка через пакетный менеджер. Библиотека доступна как в npm, так и в Yarn, что обеспечивает гибкость при интеграции в проект.
Проверка версии npm и Node.js Перед установкой необходимо убедиться, что установленные версии Node.js и npm соответствуют минимальным требованиям. Обычно достаточно Node.js версии 8 и выше, а npm версии 5 и выше. Проверка выполняется командами:
node -v
npm -vУстановка sw-precache в проект
Для локальной установки, которая предпочтительна для проектов, выполняется команда:
npm install sw-precache --save-dev
Ключевой момент: использование флага --save-dev
сохраняет зависимость в секции devDependencies файла
package.json, так как sw-precache нужен только на этапе
сборки и генерации сервис-воркера, но не в продакшн-коде.
Проверка успешной установки
После установки можно убедиться в наличии пакета, вызвав:
npx sw-precache --help
Вывод справки подтвердит, что пакет корректно установлен и готов к использованию.
Проверка версии Yarn Для корректной работы Yarn должна быть версии 1.22 или выше. Проверка выполняется:
yarn -vУстановка пакета
Для локальной установки через Yarn используется команда:
yarn add sw-precache --dev
Аналогично npm, ключ --dev сохраняет пакет как
девелоперскую зависимость.
Проверка доступности команды
После установки можно выполнить:
yarn sw-precache --help
Если справка выводится корректно, библиотека готова к генерации конфигурации сервис-воркера.
--save-dev или
--dev) интегрирует sw-precache в проект, что позволяет
использовать одинаковую версию для всех разработчиков команды и
гарантирует совместимость с системой сборки (Webpack, Gulp, Grunt).npm install -g sw-precache) делает команду доступной в
любом месте системы, что удобно для тестирования или использования вне
проекта, но может вызвать конфликты версий при работе с разными
проектами.Для упрощения запуска можно добавить команду в секцию
scripts файла package.json:
{
"scripts": {
"generate-sw": "sw-precache --config=sw-precache-config.js"
}
}
Теперь генерация сервис-воркера выполняется одной командой:
npm run generate-sw
или через Yarn:
yarn generate-sw
Если проект использует Gulp или Webpack, sw-precache можно интегрировать напрямую в процесс сборки:
const gulp = require('gulp');
const swPrecache = require('sw-precache');
gulp.task('generate-service-worker', function(callback) {
swPrecache.write('public/service-worker.js', {
staticFileGlobs: ['public/**/*.{js,css,html,png,jpg}'],
stripPrefix: 'public/'
}, callback);
});
sw-precache-webpack-plugin, который использует ту же
библиотеку под капотом.--save-dev или --dev отражает, что
пакет используется только на этапе сборки.--help подтверждает
корректную установку.Такой подход обеспечивает надежное управление зависимостями и позволяет построить предсказуемый процесс кэширования статических ресурсов с помощью sw-precache.