2017-06-12 48 views
1

因此,我一直在這個項目上工作了一段時間,我想添加自己的CSS到項目中。我試圖添加一個新的scss文件到項目中,並將其內置到主css文件中,但Gulp不想導入我的scss文件。Gulp不更新輸出css與新的scss文件

下面是一口代碼

var gulp = require('gulp'); 
var uglify = require('gulp-uglify'); 
var watch = require('gulp-watch'); 
var batch = require('gulp-batch'); 
var sass = require('gulp-sass'); 
var minifyCss = require('gulp-minify-css'); 
var concat = require('gulp-concat'); 
var rename = require('gulp-rename'); 
var webserver = require('gulp-webserver'); 

var paths = { 
    sass: ['src/scss/**'], 
    js: ['src/ng/_declare.js', 'src/ng/**'], //_declare.js needs to be first, so it gets added to bundle first. 
    static: ['src/js/**'], 
    core: ['./td_frontend_shared/**'] 
}; 

gulp.task('default', ['watch-dev']); 

gulp.task('publish-dev', function(done){ 

}); 

gulp.task('sass', function(done) { 
    gulp.src('src/scss/import.scss') 
    .pipe(sass()) 
    .on('error', function(err){ 
     console.log('error building sass', err); 
     done(); 
    }) 
    .pipe(gulp.dest('public/dist/')) 
    .pipe(minifyCss({ 
     keepSpecialComments: 0 
    })) 
    .pipe(rename({ extname: '.min.css' })) 
    .pipe(gulp.dest('public/dist/')) 
    .on('end', done); 
}); 

任何幫助將不勝感激!

回答

0

如果您希望在命令行中使用gulp,您需要在默認情況下添加該任務。你可以做這樣的...

gulp.task('default', function() { 
    gulp.start(
     'sass' 
    ); 
}); 

試試我的倉庫裏面HTML項目中使用SASS,它支持巴貝爾(可選)和自動重新加載頁面時,你改變scss文件;)

https://github.com/shramee/gulp-sass-babel

+0

很容易就可以運行'gulp sass',並且我想弄清楚爲什麼我的新scss文件沒有被添加到正在構建的css文件中。 (我使用它作爲它自己的函數在多個任務中調用它(對不起並沒有包含整個gulp文件,但是希望保持這個簡短) –

+1

你的目錄結構是什麼?你試圖編輯哪個文件?您希望花費一些時間將CSS添加到? – shramee

+0

後,我發現有一個用於導入所有新的scss文件的scss文件,我不知道我的gulp文件從導入中導入了scss文件。 scss文件 –