国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

how to implement the version control of static files

2024-04-27 15:17:13
字體:
來源:轉載
供稿:網友

https://github.com/sindresorhus/gulp-rev/blob/master/integration.md 如何通過后端服務(php)做靜態資源的版本化,當然也有直接通過前端構建工具靜態資源版本化, 下面是angular項目,使用gulp直接實現靜態資源版本化。

/*** build 時的 js 壓縮, 文件 hash 地址替換*/var gulp = require('gulp');var config = require('../config').inject;var handleErrors = require('../util/handleErrors');/*** 根據文件內容生成Hash名稱,映射表寫入 dest/rev-manifest.json 文件中。*/gulp.task("revision", function() { var gulpif = require('gulp-if'); var rev = require('gulp-rev'); var uglify = require('gulp-uglify'); return gulp.src([config.src + "/**/*.CSS", config.src + "/**/*.js"]) .pipe(rev()) .pipe(gulpif(/.*?vendor[-/d/w]*/.js$/, uglify())) .pipe(gulp.dest(config.dest)) .pipe(rev.manifest()) .on('error', handleErrors) .pipe(gulp.dest(config.dest));});/*** 根據 revision 任務生成的映射表,html中引用的資源文件名稱進行替換*/gulp.task("inject", ["revision"], function(){ var manifest = gulp.src(config.dest + "/rev-manifest.json"); var replacePath = require('gulp-replace-path'); var revReplace = require('gulp-rev-replace'); var path = require('path'); // 處理html中的相對路徑為相對config.src的絕對路徑 var replacement = function (match, __absolutePath__) { return function (match, srcStr, originPath) { if (originPath.charAt(0) === '/' || /^http/i.test(originPath)) { // absolute path return match; } else { var relative = path.relative(PRocess.cwd() + '/' + config.src, path.dirname(__absolutePath__)); return (srcStr + "/" + path.join(relative, originPath)).replace(////g, '/'); // fix windows下sep } }; }; return gulp.src(config.htmlSrc, {base: config.src}) .pipe(replacePath(/(<script[^>]*?src=['"])([^'"]*)/g, replacement)) // 替換script src .pipe(replacePath(/(<link[^>]*?href=['"])([^'"]*)/g, replacement)) // 替換 link中的 href .pipe(revReplace({manifest: manifest, canonicalUris: false})) .pipe(gulp.dest(config.htmlDest));});
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宽甸| 高唐县| 开封县| 马边| 大埔区| 山阳县| 阿拉善右旗| 桐柏县| 尼勒克县| 广昌县| 嘉禾县| 曲麻莱县| 山丹县| 平凉市| 获嘉县| 上栗县| 万荣县| 奎屯市| 康保县| 桑日县| 宣威市| 佳木斯市| 轮台县| 法库县| 黄平县| 奇台县| 买车| 泽普县| 冕宁县| 安康市| 九台市| 古交市| 武川县| 安新县| 德令哈市| 兰溪市| 绥阳县| 阿鲁科尔沁旗| 长乐市| 吴川市| 九寨沟县|