如何覆盖在GulpJS输出文件?

问题描述 投票:0回答:1

我使用GulpJS编译LESS和SASS文件到只有一个文件CSS。我成功合并的文件合并成一个,但是,当我编辑的任何LESS / SASS文件并重新编译,它没有覆盖的style.css,但不断重复旧的元素。有没有办法覆盖输出文件,如果有就少/上海社会科学院更新?

这是我在gulp.js代码:

var gulp = require('gulp');
var sass = require('gulp-sass');
var less = require('gulp-less');
var concat = require('gulp-concat');
var merge = require('merge-stream');
var bower = require('bower');

gulp.task('default', function () {

    var lessStream = gulp.src('./src/style.less')
        .pipe(less())
        .pipe(concat('style.less'));

    var scssStream = gulp.src('./src/style.sass')
        .pipe(sass())
        .pipe(concat('style.sass'));

    var cssStream = gulp.src('assets/dist/style.css', {
            base: './'
        })
        .pipe(concat('style.css'));

    var mergedStream = merge(lessStream, scssStream, cssStream)
        .pipe(concat('style.css'))
        .pipe(gulp.dest('assets/dist/'));

    return mergedStream;
    gulp.start('bower');
});

gulp.task('bower', () => {
    return gulp.src('assets/dist/style.css')
        .pipe(wiredep())
        .pipe(gulp.dest('assets/dist/'));
})
sass gulp less overwrite preprocessor
1个回答
1
投票

我相信这个问题是在这部分

var cssStream = gulp.src('assets/dist/style.css', {
        base: './'
    })
    .pipe(concat('style.css'));

var mergedStream = merge(lessStream, scssStream, cssStream)
    .pipe(concat('style.css'))
    .pipe(gulp.dest('assets/dist/'));

你是抓现有资产/距离/ style.css中,与所有其他文件串联,然后将其保存在资产/距离/ style.css中。因此,下一次运行的过程中,你会抢的style.css(与它已经拥有的一切),并与其他文件拼接它。

如果所有它是从少,青菜文件的输出,我不会抢的style.css。

© www.soinside.com 2019 - 2024. All rights reserved.