- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
与此问题类似:How do I replace the filenames listed in index.html with the output of gulp-rev?
我使用 gulp-useref 来组合我的构建 block 中列出的文件。我想使用 gulp-rev 将哈希添加到串联文件的末尾,并使用新文件名更新我的标记。
根据 gulp-rev-replace 文档,我几乎完全使用它,并进行了一些细微的调整:
var gulp = require('gulp');
var rev = require('gulp-rev');
var revReplace = require('gulp-rev-replace');
var useref = require('gulp-useref');
var filter = require('gulp-filter');
var uglify = require('gulp-uglify');
var csso = require('gulp-csso');
var RevAll = require('gulp-rev-all');
gulp.task("index", function () {
var jsFilter = filter("js/**/*.js");
var cssFilter = filter("css/**/*.css");
var revAll = new RevAll();
var userefAssets = useref.assets();
return gulp.src("Views/**/*.cshtml")
.pipe(userefAssets) // Concatenate with gulp-useref
.pipe(jsFilter)
.pipe(uglify()) // Minify any javascript sources
.pipe(jsFilter.restore())
.pipe(cssFilter)
.pipe(csso()) // Minify any CSS sources
.pipe(cssFilter.restore())
.pipe(rev()) // Rename the concatenated files
.pipe(userefAssets.restore())
.pipe(useref())
.pipe(revReplace()) // Substitute in new filenames
.pipe(gulp.dest('public'));
});
我的 html 看起来像这样:
<!-- build:css css/combined.css -->
<link href="css/components/style1.css" rel="stylesheet">
<link href="css/components/style2.css" rel="stylesheet">
<link href="css/pages/style3.css" rel="stylesheet">
<!-- endbuild -->
<!-- build:js js/lib.js -->
<script type="text/javascript" src="js/global/js1.js"></script>
<script type="text/javascript" src="js/vendor/moment.js"></script>
<script type="text/javascript" src="js/components/component.calendar.js"></script>
<script type="text/javascript" src="js/pages/jaunt-hotels/matrix.js"></script>
<!-- endbuild -->
我得到的输出是:
<link rel="stylesheet" href="css/combined.css">
<script src="js/lib.js">
the </script>
但我正在寻找的是这样的:
<link rel="stylesheet" href="css/combined-ABC234.css">
<script src="js/lib-TYU765.js"></script>
目录结构:
root
|-css
|-style1.css
|-style2.css
|-style3.css
|-js
|-*js files here
|-views
|-*Many folders with .cshtml files
|-gulp
|-tasks
|-bundle-assets.js <- task that contains code above
非常感谢任何帮助!
最佳答案
您需要将一个选项传递给revReplace()
,如下所示:
.pipe(revReplace({replaceInExtensions: ['.cshtml']}));
默认情况下,gulp-rev-replace
将仅对 ['.js', '.css', '.html', '.hbs'] 执行更改
.
有关 https://www.npmjs.com/package/gulp-rev-replace#options-replaceinextensions 的更多信息.
我正在使用 .ejs
并遇到了类似的问题。希望这有帮助..
关于Gulp-Rev-replace 没有用 gulp-rev 哈希替换我的文件路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29912084/
我正在尝试使用 gulp-rev、gulp-rev-replace 和 gulp-rev-css-url 重写对我的版本图像文件的引用。 我已设法修改文件并将 list 与以下 gulp 代码合并:
与此问题类似:How do I replace the filenames listed in index.html with the output of gulp-rev? 我使用 gulp-use
git blame --ignore-revs-file显然是现代 Git 中存在的一个选项。 只有一个问题。它不起作用。 或者至少,它对我不起作用: 您可以将其添加到 shell 脚本中: mkdi
我想将我在 eclipse 中的项目从 SDK rev 15 移动到 rev 17,但现在我不能再运行简单的项目导入示例,这些示例在 rev 15 下没有问题。在 rev 15 下,我只是使用构建路径
使用 Three.js Rev 82,我的实验飞行模拟器应用程序显示了此显示(根据需要显示并支持对象拾取):- 当我将应用程序更改为使用 Three.js Rev 89 时,执行错误为零(令人满意),
背景 我正在使用 Yeoman webapp 来搭建我的前端。 在 gruntfile 中,他们使用 grunt-rev 和 grunt-usemin Grunt-rev 将“修改”我的 Assets
我在将 android SDK 工具 rev 19 更新到 rev 20 和 Android SDK Platform-tool rev 11 到 rev 12 时遇到问题。 我检查了 SDK 管理器
这是来自 pre-commit 的 .pre-commit-config.yaml . 它将 git 克隆 git 存储库的指定 rev。 我怎样才能忽略 rev 并始终 git clone 最新的?
我是 OCaml 的新手,并试图将 List.append 实现为一种学习练习。这就是我所拥有的: let rec append a b = match (List.rev a) with
这是我的矩阵: df <- data.frame(matrix(1:25,5)) X1 X2 X3 X4 X5 1 1 6 11 16 21 2 2 7 12 17 22 3
我有一个 say {a,b,c,d,...} 的列表,每个元素 a,b,c,d, ... 是 data.table但是,对于 data.table,我需要颠倒顺序我只想rev()除了第一列之外的所有内
我发现在gradle构建期间将git版本号添加到我的项目版本中是一个 super 聪明的主意,例如major.minor.commit。这是通过以下方式实现的 git rev-list --count
如果我这样做 git clone - 它完美无缺。 但如果之后我尝试使用 git pull它挂起(有时工作正常): git 客户端版本:2.6.3 git 服务器版本:2.1.4 输出: $ GIT_
gulp-rev-all 有问题。我有以下基本的 gulpfile: var gulp = require('gulp'), RevAll = require('gulp-rev-all'),
我试着写了一段代码来旋转文本文件中的每一行。例如,给定下一行: a b c 输出将是: c b a 此脚本仅获取一个参数作为参数 - 文本文件的名称。另外,我想这样做对额外的空间很重要。即,给定下一行
正在使用yeoman angular generator (1.4.x)的代码库进行工作. gulp-rev 正在被使用,即使对于相同的代码库,它每次都会生成一个新的文件(哈希)名称,我如何保留相同的
以下命令的作用是什么? git rev-parse --short HEAD 答案应该包括: 一个简短而中肯的答案,解释这个命令作为一个整体的作用 rev-parse的解释 --short 的解释 H
在寻找 git hook 示例时,我遇到了以下帖子:https://github.com/Movidone/git-hooks/blob/master/pre-receive我想了解以下命令: git
所以我知道这个问题已经被问了很多,但我没有找到任何合适的答案。我希望在我的提示中显示当前 git rev 的名称,但以一种漂亮的方式:如果我在一个分支上,我想要分支的名称;如果它不是分支,我希望在我的
根据 git name-rev doc , Finds symbolic names suitable for human digestion for revisions given in any f
我是一名优秀的程序员,十分优秀!