使用gulp-sass进行混音时出错

时间:2015-03-18 01:23:45

标签: gulp compass gulp-sass

我正在尝试将gulp-sass用于我的项目,但是当我运行gulp任务时,我不断收到错误:

“错误:要导入的文件未找到或不可读:指南针/重置”

我的gulp文件目前非常基础:

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

// Include Our Plugins
var sass = require('gulp-sass')

gulp.task('sass', function() {
    return gulp.src('css/*.scss')
        .pipe(sass({ compass: true}))
        .pipe(gulp.dest('css'));
});

我可以通过在终端中使用'指南针监视'来编译sass,但是我想尝试使用gulp,但我对此很难过。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

你没有设置'监视'任务,所以这就是为什么你的gulp文件没有做任何事情 - 你没有告诉gulp文件除了运行sass函数以外的东西,它应该在哪里吐你的CSS。

你需要设置一个监视功能(所以当文件发生变化时,会发生一些事情),然后你想要做的任何其他事情(缩小,扩展,压缩,重新加载你的浏览器)然后包装你的sass并观察将要获得的任务从终端运行gulp时调用默认函数。

有很多教程可供选择,因此您可以找到一个可以帮助您的教程。虽然,我发现gulp对你的开发环境非常有用,并且不同的gulp-sass模块工作方式不同(例如gulp-ruby-sass似乎不喜欢globbing,所以有很多陷阱)

这里只是我的gulpfile的一个示例,但是,这是当前在我的sass中导入我的变量文件夹时出错。

var gulp = require('gulp');
var sass = require('gulp-sass');
var maps = require('gulp-sourcemaps');
var livereload = require('gulp-livereload');
gulp.task('styles', function() {
    gulp.src('postercatalogue/sites/all/themes/postomega/sass/**/*.scss', {style:'expanded'})
    .pipe(sass({sourcemap: true}))
    .pipe(gulp.dest('./css'))
    .pipe(livereload());
    });
gulp.task('watch', function(){
    livereload.listen();
    gulp.watch('sass/**/*.scss',['styles']);
    });    
gulp.task('default',['styles','watch']);