【问题标题】:Keep original file with Gulp使用 Gulp 保留原始文件
【发布时间】:2016-03-05 02:09:39
【问题描述】:

我刚开始使用 Gulp。此代码用于将 scss 文件压缩为 css。我不知道如何保持其中一个 css 文件未压缩。

这就是我想要的:

/assets/css/custom.css
/assets/css/custom.min.css

代码:

var gulp = require('gulp');
var sass = require('gulp-sass');

gulp.task('styles', function() {
    gulp.src('assets/scss/custom.scss')
        .pipe(sass({outputStyle: 'compressed'}))
        .pipe(gulp.dest('./assets/css/'));
});

gulp.task('default',function() {
    gulp.watch('assets/scss/**/*.scss',['styles']);
});

【问题讨论】:

    标签: css sass gulp


    【解决方案1】:

    你可以做的是扩展你的任务,让它写出未压缩的版本,然后压缩它,重命名它,最后再写出来。

    var gulp = require('gulp');
    var sass = require('gulp-sass');
    var rename = require('gulp-rename');
    
    gulp.task('styles', function() {
        gulp.src('assets/scss/custom.scss')
            .pipe(sass())
            .pipe(gulp.dest('./assets/css/'))
            .pipe(sass({outputStyle: 'compressed'}))
            .pipe(rename({ suffix: '.min' }))
            .pipe(gulp.dest('./assets/css/'));
    });
    

    请注意,您需要将 gulp-rename 插件添加到您的依赖项中。您还可以使用专用的缩小器(例如 gulp-minify-css)而不是 SASS 插件来缩小您的 CSS。

    【讨论】:

    • 使用 gulp-minify-css 有什么好处吗?
    • 我能想到的原因是:1) 速度略有提高,因为它不会尝试编译已经编译的 CSS。 2)如果您想更改 sass 编译器,则需要面向未来。不知道这两种方法的输出有没有区别。
    猜你喜欢
    • 2020-06-29
    • 2015-06-09
    • 2019-06-24
    • 2021-07-11
    • 2020-02-16
    • 2020-06-20
    • 2016-01-22
    • 1970-01-01
    • 2018-05-08
    相关资源
    最近更新 更多