2017-05-13 34 views
0

以下是我面對這個錯誤,請幫我解決這個代碼,我會很增光得到明確的答案___任務「薩斯」是不是在你的Gulpfile - 錯誤

一切運行平穩,但除非我保存文件時,出現下列錯誤

Error:任務「青菜」是不是在你的gulpfile

// require gulp 
var gulp = require('gulp'); 

// require other packages 
var concat = require('gulp-concat'), 
cssmin = require('gulp-minify-css'), 
rename = require("gulp-rename"), 
sass = require('gulp-sass'), 
browserSync = require('browser-sync'), 
uglify = require('gulp-uglify'), 
imagemin = require('gulp-imagemin'), 
autoprefix = require('gulp-autoprefixer'); 
changed = require('gulp-changed'), 


// scripts task 
gulp.task('scripts', function() { 
    return gulp.src('./src/js/*.js') 
    .pipe(concat('app.js')) 
    .pipe(gulp.dest('./dist/js/')) 
    .pipe(uglify()) 
    .pipe(rename({ 
    suffix: '.min' 
    })) 
    .pipe(gulp.dest('./dist/js/')); 
}); 

// styles task and autoprefix 
gulp.task('styles', function() { 
    gulp.src(['./src/sass/*.scss']) 
    .pipe(autoprefix('last 2 versions')) 
    .pipe(sass()) 
    .pipe(concat('styles.css')) 
    .pipe(cssmin()) 
    .pipe(rename({ 
    suffix: '.min' 
    })) 
    .pipe(gulp.dest('./dist/css/')); 
}); 


// browser sync 
gulp.task('browser-sync', ['styles'], function() { 
    browserSync({ 
    server: { 
     baseDir: '' 
    }, 
    notify: false 
    }); 
    gulp.watch("./src/sass/*.scss", ['scss']); 
    gulp.watch("*.html").on('change', browserSync.reload); 
}); 

// watch task 
gulp.task('watch', function() { 
    gulp.watch('./src/js/*.js', ['scripts']); 
    gulp.watch('./src/sass/*.scss', ['styles']); 
}); 

// image minification 
gulp.task('imagemin', function() { 
    var imgSrc = './src/img/**/*', 
    imgDst = './dist/img'; 

    gulp.src(imgSrc) 
    .pipe(changed(imgDst)) 
    .pipe(imagemin()) 
    .pipe(gulp.dest(imgDst)); 
}); 

gulp.task('default', ['scripts', 'styles', 'browser-sync', 'imagemin', 'watch']); 
+0

請問,如果你只是使用SASS任務從故宮文檔工作? https://www.npmjs.com/package/gulp-sass –

+1

你確定它說任務'sass'而不是'scss'? – Originato

+0

對不起,它沒有工作,但當我遵循並使用npm文檔中的sass任務時。請諮詢。 –

回答

1

你沒有,事實上,定義的「青菜」的任務,也不是「SCSS」的任務,多數民衆贊成標記爲可靠在「瀏覽器同步」文件下。

嘗試更換:

gulp.watch("./src/sass/*.scss", ['scss']); 

gulp.watch("./src/sass/*.scss", ['styles']); 
+0

我試過這個選項仍然不起作用,但SCSS和JS插件在沒有瀏覽器同步的情況下工作 –