Что такое файл rev-manifest.json в gulp?

#gulp

#gulp

Вопрос:

Я новичок в Gulp. Кто-нибудь может объяснить, что такое rev-manifest.json файл в gulp?

Ответ №1:

В информатике есть только две сложные вещи: аннулирование кеша и присвоение имен вещам.

— Фил Карлтон


В Gulp есть плагин gulp-rev, который используется для добавления хэша содержимого файла в конец его имени, так что, например, script.js стало бы что-то вроде script-134cfcc203.js .

rev-manifest.json — это сопоставление, в котором хранится исходное имя и текущее имя каждого файла.

Это сделано для аннулирования кэша. Вот как это делается:

Вы устанавливаете TTL (время жизни) ваших ресурсов (стилей, скриптов и т.д.) На бесконечность На своем сервере (nginx, apache или что-то еще), Что означает, что вы сообщаете браузерам ваших клиентов, что они должны кэшировать ресурсы вечно.

Затем, когда вы изменяете содержимое файла (например, script.js ), потому что вы добавляете его хэш к его имени, тогда имя изменится. Затем, когда браузеры пользователей запрашивают вашу страницу, они видят ее как совершенно новый файл и поэтому вынуждены повторно загружать ее. Но пока вы не измените содержимое файла, они никогда не загрузят его повторно, и, следовательно, загрузка вашей страницы ускоряется.

Хотя обратите внимание, что вам также нужен другой плагин, gulp-rev-rewrite, для поиска в ваших HTML-файлах и автоматической замены script.js на его новое имя, и этот плагин использует rev-manifest.json файл для этого.

Надеюсь, это достаточно понятно. Или, если это не так, не стесняйтесь спрашивать, и я отредактирую и уточню больше

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

1. Это идеально. Спасибо.

2. @getFullStack Если он отвечает на ваш вопрос, пожалуйста, примите его (используя галочку слева), чтобы другие могли легко найти правильный ответ и доверять ему