gulp实用插件

  • gulp-rename 重命名
var gulp = require('gulp'); 
var uncss = require('gulp-uncss-sp');
let rename = require('gulp-rename');
 
gulp.task('default', function () { 
    return gulp.src('*.css') //需要进行处理的css
        .pipe(uncss({
            html:['*.html']  //使用css的html文件,可以多个
        }))
        .pipe(rename({
          dirname: "text",                // 路径名
          basename: "goodbye",            // 主文件名  不写就默认
          prefix: "pre-",                 // 前缀
          suffix: "-min",                 // 后缀
          extname: ".html"           
        }))
        .pipe(gulp.dest('./dist'));  //输出目录
});
  • delete 清除目录
$_> npm install delete

var { series,src,dest } = require('gulp'); 
var uncss = require('gulp-uncss-sp');
let del = require('delete');
 
function clean(cb) {
    del("dist");
    cb();
}
function uncss(cb) { 
    return src('*.css') //需要进行处理的css
        .pipe(uncss({
            html:['*.html']  //使用css的html文件,可以多个
        }))
        .pipe(dest('./dist'));  //输出目录
}

exports.default = series(clean,uncss);
  • gulp-concat 合并文件
let concat = require('gulp-concat');
let gulp = require('gulp');

gulp.task('default',()=>{
  gulp.src('./js/*.js')
    .pipe(concat('all.js'))         // 合并all.js文件
    .pipe(gulp.dest('./dist'));
})

    
  //gulp.src(['./js/demo1.js','./js/demo2.js','./js/demo2.js'])
//    .pipe(concat('all.js'))         // 按照[]里的顺序合并文件
//    .pipe(gulp.dest('./dist'));
    
  • gulp-zip
let gulp = require('gulp');
var zip = require('gulp-zip');

gulp.task('default', () => {
    gulp.src('./js/*')
        .pipe(zip('all.zip'))                   // 压缩成all.zip文件
        .pipe(gulp.dest('./dist'))
})
  • gulp-useref 替换html中的link script 文件
<!-- html -->
    <!-- build:css /css/all.css -->
    <link rel="stylesheet" href="css/normalize.css"> <!-- 需要实际存在 -->
    <link rel="stylesheet" href="css/main.css">
    <!-- endbuild -->

    <!-- build:js /js/bundle.js -->
    <script src="./js/index.js"></script>
    <script src="./js/module.js"></script>
    <!-- endbuild -->
变成
  <link rel="stylesheet" href="/css/all.css">
  <script src="/js/bundle.js"></script>

// Gulpfile.js
let gulp = require('gulp');
let useref = require('gulp-useref');

gulp.task('default', () => {
    gulp.src('./index.html')
        .pipe(useref())
        .pipe(gulp.dest('./dist'))
})
  • gulp-html-replace 替换html中的块
<!-- build:css -->                         
<link rel="stylesheet" href="css/normalize.css"> // 不需要实际存在
<link rel="stylesheet" href="css/main.css">
<!-- endbuild -->

    <!-- build:js  -->
    <script src="./js/index.js"></script>
    <script src="./js/module.js"></script>
    <!-- endbuild -->

<link rel="stylesheet" href="all.css">
<script src="bundle.js"></script>

// gulpfile.js
let gulp = require('gulp');
let htmlreplace = require('gulp-html-replace');

gulp.task('default', () => {
    gulp.src('./index.html')
        .pipe(htmlreplace({
            'css': 'all.css',
            'js': 'bundle.js'
        }))
        .pipe(gulp.dest('./dist'))
})
  • gulp-rev 给文件增加hash值 main.css -> main-342515.css
let gulp = require('gulp');
let rev = require('gulp-rev');

gulp.task('default', () => {
    gulp.src('./css/*.css')
        .pipe(rev())
        .pipe(gulp.dest('./dist/css'))
})
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容