2017-11-15 6 views
0

私は、グローバルとローカルバージョン3.9.1で私のプロジェクトに最初の時間を設定し、そのように一口ウォッチ・タスクを設定飲み込むています:正しい一息先

var gulp = require('gulp'); 
var uglify = require('gulp-uglify'); 
var concat = require('gulp-concat'); 
var minifyCss = require('gulp-minify-css'); 
var autoprefixer = require('gulp-autoprefixer'); 
var sass = require('gulp-sass'); 

// vars 
var SCSS_PATH ='styles/**/*.scss'; 
var DIST_CSS_PATH ='css/'; 

// Styles for SCSS 
gulp.task('styles', function() { 
    return gulp.src(SCSS_PATH) 
    .pipe(sass()) 
    .pipe(minifyCss()) 
    .pipe(autoprefixer()) 
    .pipe(gulp.dest(DIST_CSS_PATH)); 
}); 

// Watch-Task 
gulp.task('watch', function() { 
    gulp.watch(SCSS_PATH, ['styles']) 
}); 

今私の時計のタスクの実行正常に終了し、cssファイルを作成してプレフィックスを付けます。しかし、それはcss/local.css/sw.cssで作成されていますが、これは明らかに正しくありません。私が作成したいものはです。css/sw.css私は何が間違っていますか?なぜですか?

+0

最初にstyles/local.css /フォルダはありますか?だからスタイル/ local.css/sw.scss? – Mark

+0

nope。それは奇妙なことです。 – Daiaiai

答えて

0

グロブ(**)を使用すると、元のフォルダ構造が維持されます。 gulp.srcgulp.destのベースを選択することもできます(hereを参照)。

ただし、フォルダ構造を平坦化することをお勧めします。 gulp-flattenでそれを行うことができます。

var gulp = require('gulp'); 
var uglify = require('gulp-uglify'); 
var concat = require('gulp-concat'); 
var minifyCss = require('gulp-minify-css'); 
var autoprefixer = require('gulp-autoprefixer'); 
var sass = require('gulp-sass'); 
var flatten = require('gulp-flatten'); 

// vars 
var SCSS_PATH ='styles/**/*.scss'; 
var DIST_CSS_PATH ='css/'; 

// Styles for SCSS 
gulp.task('styles', function() { 
    return gulp.src(SCSS_PATH) 
    .pipe(sass()) 
    .pipe(minifyCss()) 
    .pipe(autoprefixer()) 
    .pipe(flatten()) 
    .pipe(gulp.dest(DIST_CSS_PATH)); 
}); 

// Watch-Task 
gulp.task('watch', function() { 
    gulp.watch(SCSS_PATH, ['styles']) 
}); 

私は本当にあなたのコードをチェックしませんでしたが、それは私のビルドシステムの一つで働いていた:

それはこのようなものとして終わるだろう。

関連する問題