首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >对子文件夹中的HTML文件进行替换

对子文件夹中的HTML文件进行替换
EN

Stack Overflow用户
提问于 2015-10-07 21:03:30
回答 1查看 535关注 0票数 0

我想知道如何用相同的散列替换子文件夹中HTML文件中的文件引用。考虑到以下文件结构

  • index.html
  • 子文件夹
    • index.html

  • 脚本
    • main.js

  • 样式
    • main.scss

以及以下html语句:

index.html:

代码语言:javascript
运行
复制
<!-- build:css styles/main.css -->
<link rel="stylesheet" href="/bower_components/normalize-css/normalize.css">
<link rel="stylesheet" href="styles/main.css">
<!-- endbuild -->

子文件夹/index.html:

代码语言:javascript
运行
复制
<!-- build:css ../styles/main.css -->
<link rel="stylesheet" href="/bower_components/normalize-css/normalize.css">
<link rel="stylesheet" href="../styles/main.css">
<!-- endbuild -->

下面是我的古尔普文件

代码语言:javascript
运行
复制
gulp.task('html', ['styles'], () => {
  const assets = $.useref.assets({searchPath: ['.tmp', 'app', '.']});

  return gulp.src('app/**/*.html')
    .pipe(assets)
    .pipe($.if('*.js', $.uglify()))
    .pipe($.if('*.css', $.minifyCss({compatibility: '*'})))
    .pipe($.rev())
    .pipe(assets.restore())
    .pipe($.useref())
    .pipe($.revReplace())
    .pipe($.if('*.html', $.minifyHtml({conditionals: true, loose: true})))
    .pipe(gulp.dest('dist'));
});

index.html中的样式链接块将被填充正确的细化和散列样式表引用。相反,subfolder/index.html中的同一个块将得到一个完全不同的散列样式表引用。但是,它确实使样式表的路径正确。

我的文件设置不正确吗?

EN

回答 1

Stack Overflow用户

发布于 2015-10-14 01:24:51

在这个单独回答的帮助下找到了答案。最后,我将每个HTML文件中的样式引用设置为app目录的根目录,并提供了3个目录供搜索:

代码语言:javascript
运行
复制
<!-- build:css({.tmp,app,.}) /styles/main.css -->
<link rel="stylesheet" href="/bower_components/normalize-css/normalize.css">
<link rel="stylesheet" href="/styles/main.css">
<!-- endbuild -->

,它与提供给gulp useref的三个目录匹配。

代码语言:javascript
运行
复制
const assets = $.useref.assets({searchPath: ['.tmp', 'app', '.']});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33002378

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档