gulp ruby sass错误,未定义不是函数

gulp ruby sass错误,未定义不是函数,gulp,gulp-ruby-sass,Gulp,Gulp Ruby Sass,我试图在我的配置中使用gulp ruby-sass运行sass任务,这是我得到的错误(错误后面是我的配置和代码): sass任务如下: gulp.task('sass',function(){ return sass(config.sass.src,config.sass.options) .pipe(plumber({errorHandler:notify.onError('<%= error.message %>')})) .pipe(

我试图在我的配置中使用
gulp ruby-sass
运行
sass
任务,这是我得到的错误(错误后面是我的配置和代码):

sass
任务如下:

gulp.task('sass',function(){
return sass(config.sass.src,config.sass.options)
           .pipe(plumber({errorHandler:notify.onError('<%= error.message %>')}))
           .pipe(sourcemaps.init())
           .pipe(autoprefixer(config.autoprefixer))
           .pipe(filter)
           .pipe(sourcemaps.write('.',{includeContent:false}))
           .pipe(filter.restore())
           .pipe(gulp.dest(config.sass.dest));
});
我为
browser sync
watch
任务执行它们:

var gulp = require('gulp');
var scsslint = require('gulp-scss-lint');
var config   = require('../config').scsslint;

gulp.task('scsslint',function(){
    return gulp.src(config.src)
               .pipe(scsslint(config.options))
});
 gulp.task('serve',['jshint','scsslint','sass'],function(){
browserSync(config);
}))

吞咽任务('watch',['serve',function()){ watch(config.jshint,['jshint']); gulp.watch(config.sass,['scsslint','sass']);
});

我可以从堆栈跟踪中看到两个问题:

1-我想你忘了这个
var filter=gulpFilter(['*.css','!*.map'])执行前
管道(过滤器)


2-如果您在此处阅读gulp ruby sass的文档,则没有sourcemapPath选项:

您正在使用glob作为源。从:

GulpRuby sass还不支持globs,只支持单个文件或目录。就像是在胡说八道

要修复此问题,请将配置更改为:

src:app+'/scss'

您的
sass.js
中的第15行是什么?以及
sourcemapPath:app+'/css'
中的
app
的值是什么?@LimH。第15行:
.pipe(filter)
,filter实际上是
gulpfilter
我得到了这个@LimH。这是我的配置中的变量app
var app='app'
几乎所有的东西都能工作,但是有一个问题
[05:50:46]gulp ruby sass stderr:Errno::EINVAL:无效参数@rb_sysopen-*.css使用--trace进行回溯。
能否将gulpFilter中的*.css更改为*.scss?我已将行更改为
var filter=gulpFilter(['!*.scss',!*.map')但错误似乎持续存在。我也尝试过不使用感叹号
*.scss
var gulp = require('gulp');
var scsslint = require('gulp-scss-lint');
var config   = require('../config').scsslint;

gulp.task('scsslint',function(){
    return gulp.src(config.src)
               .pipe(scsslint(config.options))
});
 gulp.task('serve',['jshint','scsslint','sass'],function(){
browserSync(config);