2017-05-22 8 views
1

gulpビルドを処理するbuild.jsファイルがあります。Gulpビルド後に生成されたindex.htmlファイルで異常な文字列を削除するには

'use strict'; 

var path = require('path'); 
var gulp = require('gulp'); 
var conf = require('./conf'); 

var $ = require('gulp-load-plugins')({ 
    pattern: ['gulp-*', 'main-bower-files', 'uglify-save-license', 'del'] 
}); 

gulp.task('partials', function() { 
    return gulp.src([ 
      path.join(conf.paths.src, '/app/**/*.html'), 
      path.join(conf.paths.tmp, '/serve/app/**/*.html') 
     ]) 
     .pipe($.minifyHtml({ 
      empty: true, 
      spare: true, 
      quotes: true 
     })) 
     .pipe($.angularTemplatecache('templateCacheHtml.js', { 
      module: 'wiCareNow', 
      root: 'app' 
     })) 
     .pipe(gulp.dest(conf.paths.tmp + '/partials/')); 
}); 

gulp.task('html', ['inject', 'partials'], function() { 
    var partialsInjectFile = gulp.src(path.join(conf.paths.tmp, '/partials/templateCacheHtml.js'), { read: false }); 
    var partialsInjectOptions = { 
     starttag: '<!-- inject:partials -->', 
     ignorePath: path.join(conf.paths.tmp, '/partials'), 
     addRootSlash: false 
    }; 

    var htmlFilter = $.filter('*.html', { restore: true }); 
    var jsFilter = $.filter('**/*.js', { restore: true }); 
    var cssFilter = $.filter('**/*.css', { restore: true }); 

    return gulp.src(path.join(conf.paths.tmp, '/serve/*.html')) 
     .pipe($.inject(partialsInjectFile, partialsInjectOptions)) 
     .pipe($.useref()) 
     .pipe($.rev()) 
     .pipe(jsFilter) 
     .pipe($.sourcemaps.init()) 
     .pipe($.sourcemaps.write('maps')) 
     .pipe(jsFilter.restore) 
     .pipe(cssFilter) 
     .pipe($.sourcemaps.init()) 
     .pipe($.minifyCss({ processImport: false })) 
     .pipe($.sourcemaps.write('maps')) 
     .pipe(cssFilter.restore) 
     .pipe($.useref()) 
     .pipe($.revReplace()) 
     .pipe(htmlFilter) 
     .pipe($.minifyHtml({ 
      empty: true, 
      spare: true, 
      quotes: true, 
      conditionals: true 
     })) 
     .pipe(htmlFilter.restore) 
     .pipe(gulp.dest(path.join(conf.paths.dist, '/'))) 
     .pipe($.size({ title: path.join(conf.paths.dist, '/'), showFiles: true })); 
}); 

// Only applies for fonts from bower dependencies 
// Custom fonts are handled by the "other" task 
gulp.task('fonts', function() { 
    return gulp.src($.mainBowerFiles()) 
     .pipe($.filter('**/*.{eot,svg,ttf,woff,woff2}')) 
     .pipe($.flatten()) 
     .pipe(gulp.dest(path.join(conf.paths.dist, '/fonts/'))); 
}); 

gulp.task('other', function() { 
    var fileFilter = $.filter(function(file) { 
     return file.stat.isFile(); 
    }); 

    return gulp.src([ 
      path.join(conf.paths.src, '/**/*'), 
      path.join('!' + conf.paths.src, '/**/*.{html,css,js,scss,ts}') 
     ]) 
     .pipe(fileFilter) 
     .pipe(gulp.dest(path.join(conf.paths.dist, '/'))); 
}); 

gulp.task('clean', function() { 
    return $.del([path.join(conf.paths.dist, '/'), path.join(conf.paths.tmp, '/partials'), path.join(conf.paths.tmp, '/serve')]); 
}); 

gulp.task('build', ['html', 'fonts', 'other']); 

私のビルドは、私が変更したい唯一のことは、私の生成index.htmlで奇妙な接尾辞で、正常に動作します:

enter image description here

冒頭ではありませんでしたそれはこのようになります文字列は、ちょうどindex.htmlです。しかし、今私はこの文字列を持っているし、私の生成されたファイル名から削除したいと思います。この問題は見つかりましたが、何をすべきかわかりません。gulp/minify: index.html gets cryptic extension in file name, how to take advantage?

アイデアをお持ちですか?

答えて

1

.pipe($.rev())を削除して、静的資産リビジョンを防止します。

+0

ありがとうございます! – MrBuggy

関連する問題