2017-05-13 17 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插件在没有浏览器同步的情况下工作 –