2017-04-25 43 views
1

根据this,可以使用Gulp从Ruby编译susy install。 但是,由于性能和弃用,是否可以使用gulp-sass而不是gulp-compass或gulp-ruby-sass? 其实我在gulpfile.js使用:处理Gulp,Bundler,Ruby和Susy

gulpfile

var gulp = require('gulp'); 

// Include plugins 
var plugins = require('gulp-load-plugins')(); 

// Variables de chemins 
var source = './sass/**/*.scss'; // dossier de travail 
var destination = './css/'; // dossier à livrer 

gulp.task('sasscompil', function() { 
    return gulp.src(source) 
    .pipe(plugins.sass({ 
     outputStyle: 'compressed', 
     includePaths: ['/home/webmaster/vendor/bundle/gems/susy-2.2.2/sass'] 
    }).on('error', sasscompil.logError)) 
    .pipe(plugins.csscomb()) 
    .pipe(plugins.cssbeautify({indent: ' '})) 
    .pipe(plugins.autoprefixer()) 
    .pipe(gulp.dest(destination + '')); 
}); 

但错误日志不起作用,因为sasscompil没有定义。 然后,我需要给所有前指南针包括像susy,时髦按钮等路径。 是否有可能给宝石的全球路径? 其他的事情,尽管使用了gulp-load-plugins,我还能安装gulp插件吗?因为如果我不这样做,gulp不会找到插件。

感谢

+1

尝试改变'sasscompil'到'plugins.sass.logError' - 可以在下面留下一个答案。 (我们将错误传递回'node-sass',它被'gulp-sass'用来输出错误)[ref](https://github.com/dlmanning/gulp-sass#options) –

+0

did上述工作? –

+0

是的,更改为''plugins.sass.logError''给我''插件'sass'错误 消息: sass/application.scss 错误:导入文件不存在或不可读:sassy-buttons。 父级样式表:/var/www/drupal-6/sites/all/themes/starter-susy2-nc-d6/sass/application.scss on line 33 of sass/application.scss '' –

回答

1

您需要更改sasscompil.logErrorplugins.sass.logError

这样

gulpfile.js

gulp.task('sasscompil', function() { 
    return gulp.src(source) 
    .pipe(plugins.sass({ 
     outputStyle: 'compressed', 
     includePaths: ['/home/webmaster/vendor/bundle/gems/susy-2.2.2/sass'] 
    }).on('error', plugins.sass.logError)) 
... 
}); 

一饮而尽,萨斯DOC:

Pass in options just like you would for node-sass; they will be passed along just as if you were using node-sass. Except for the data option which is used by gulp-sass internally. Using the file option is also unsupported and results in undefined behaviour that may change without notice.

例如

gulp.task('sass', function() { 
return gulp.src('./sass/**/*.scss') 
    .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError)) 
    .pipe(gulp.dest('./css')); 
});