Проверяет понимание механизма инвалидации кэша браузера для принудительного обновления статических файлов после изменений.
Cache busting (сброс кэша) — это подход, используемый для принудительного обновления статических ресурсов (JavaScript, CSS, изображения) в браузере пользователя после выхода новой версии приложения. Браузеры активно кэшируют файлы, чтобы ускорить загрузку страниц, но это может привести к тому, что пользователи увидят старую версию интерфейса или сломанную функциональность после деплоя.
Основная идея — изменить имя файла или добавить к нему уникальный параметр при каждом изменении содержимого. Самый надёжный способ — использовать хеш от содержимого файла (content hash). Например, файл main.js превращается в main.a1b2c3.js. Когда содержимое меняется, хеш становится другим, и браузер воспринимает это как новый ресурс, загружая его заново.
// webpack.config.js
module.exports = {
output: {
filename: '[name].[contenthash].js',
path: path.resolve(__dirname, 'dist'),
},
};
// Результат: main.8f3b2c.js, vendor.4a1d5e.jsПри каждой сборке Webpack вычисляет хеш на основе содержимого файла. Если код не менялся — хеш остаётся прежним, и браузер использует кэшированную версию. Это оптимально: пользователи не скачивают одни и те же файлы повторно.
Cache busting — обязательная практика для production-сборок. Она позволяет сочетать преимущества кэширования (быстрая загрузка) с гарантией, что пользователи всегда получают актуальные файлы. Без неё часты баги, связанные с устаревшими скриптами или стилями после деплоя.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию