gulp-rev3
是一个 gulp
插件,能够对静态资源文件进行版本号控制,以解决浏览器缓存问题。本文将详细介绍如何使用 gulp-rev3
,并且通过示例代码演示具体操作步骤。
安装
在开始使用 gulp-rev3
之前,需要确保你的电脑已安装了 gulp
,如果没有请先安装 gulp
。在命令行窗口输入以下代码安装 gulp
:
npm install gulp -g
接着,在命令行窗口输入以下代码安装 gulp-rev3
:
npm install gulp-rev3 --save-dev
使用
在使用 gulp-rev3
前,需要确认有哪些静态资源需要进行版本号控制。如:js
文件、css
文件、图片等都需要进行版本号控制。
引入插件
在 gulpfile.js
中引入 gulp
和 gulp-rev3
插件:
const gulp = require('gulp'); const rev = require('gulp-rev3');
配置任务
在 gulpfile.js
中添加需要执行的任务:
-- -------------------- ---- ------- ---------------- -------- -- - --- --------- - ----------- ------ ----------------- ----------- --------- ---------------------- --- ------------------------ ---------------------------------------- ------------------------- ---
以上代码中的 timestamp
为版本号(可自定义),src
为静态资源文件夹路径,dist
为生成静态资源文件的路径,rev-manifest.json
为版本号映射文件。
预编译操作
在初始化时先运行 rev
任务进行预编译,生成版本号和版本号映射文件:
gulp.task('default', function(callback) { runSequence('rev', callback ); });
引入版本号
在网页中使用静态资源时,引入版本号映射文件,将静态资源的路径替换为带有版本号的路径,如:
-- -------------------- ---- ------- --------- ----- ----- ---------- ------ ----- ---------------- ----------------- ----- ---------------- -------------------------------- -- ------- ------ ----------- ------------- ------- -------------------------------------- ------- -------
以上代码中的 rev
方法输出已经添加了版本号的静态资源路径。
示例
下面是一个具体的示例,添加版本号后生成 rev-manifest.json
文件:
-- -------------------- ---- ------- ----- ---- - ---------------- ----- --- - --------------------- ----- ----------- - ------------------------ ---------------- -------- -- - --- --------- - ----------- ------ ----------------- ----------- --------- ---------------------- --- ------------------------ ---------------------------------------- ------------------------- --- -------------------- ------------------ - ------------------ -------- -- ---
在 src
目录下有 js
和 css
两个文件夹,同时有 index.html
文件:
src ├── css │ └── style.css ├── js │ └── main.js └── index.html
执行 gulp
命令后,在 dist
目录下生成 index.html
、main.js
、style.css
文件和 rev-manifest.json
映射文件,rev-manifest.json
文件内容如下:
{ "css/style.css": "css/style-1617101300910.css", "js/main.js": "js/main-1617101372513.js" }
在 index.html
引入静态文件时,可以通过 rev
方法添加版本号:
-- -------------------- ---- ------- --------- ----- ------ ------ ----------------- ----- ---------------- -------------------------------- -- ------- ------ ----------- ------------- ------- -------------------------------------- ------- -------
最终生成的文件路径为:
dist ├── css │ └── style-1617101300910.css ├── js │ └── main-1617101372513.js ├── index.html └── rev-manifest.json
该文件夹中的文件已经添加了版本号,并且对应的版本号映射文件也生成了。
总结
在本文中,我们详细介绍了 gulp-rev3
的用法和整个操作流程,并提供了一个具体的示例。使用 gulp-rev3
进行版本号控制,能够有效解决浏览器缓存问题,为静态资源管理带来了极大的方便。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6005725681e8991b448e869c