Sass 与Gulp、Bundler、Ruby和Susy打交道

Sass 与Gulp、Bundler、Ruby和Susy打交道,sass,gulp,bundler,susy,Sass,Gulp,Bundler,Susy,据介绍,使用Gulp从Ruby编译susy安装是可能的。 但是,由于性能和不受欢迎,有可能使用gulp sass而不是gulp compass或gulp ruby sass吗? 实际上我在gulpfile.js中使用了这个: gulpfile var gulp = require('gulp'); // Include plugins var plugins = require('gulp-load-plugins')(); // Variables de chemins var sourc

据介绍,使用Gulp从Ruby编译susy安装是可能的。 但是,由于性能和不受欢迎,有可能使用gulp sass而不是gulp compass或gulp ruby sass吗? 实际上我在gulpfile.js中使用了这个:

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 + ''));
});
gulp.task('sass', function () {
 return gulp.src('./sass/**/*.scss')
   .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
   .pipe(gulp.dest('./css'));
});
但是错误日志不起作用,因为sasscompil没有定义。 然后我需要给所有前指南针的路径,比如susy,sassy button,等等。。 是否有可能为gems提供一个全局路径? 还有一件事,尽管使用了gulp加载插件,但我是否安装了gulp插件?因为如果我不这么做,gulp就找不到插件


谢谢

您需要将
sasscompil.logError
更改为
plugins.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))
...
});
大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口大口

传入选项,就像您为节点sass传递选项一样;它们将被传递,就像您使用节点sas一样。除gulp sass内部使用的数据选项外。使用文件选项也不受支持,并且会导致未定义的行为,这些行为可能会在不通知的情况下更改

示例

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 + ''));
});
gulp.task('sass', function () {
 return gulp.src('./sass/**/*.scss')
   .pipe(sass({outputStyle: 'compressed'}).on('error', sass.logError))
   .pipe(gulp.dest('./css'));
});

尝试将
sasscompil
更改为
plugins.sass.logError
-可以在下面留下答案。(我们正在将错误传递回
节点sass
,该节点由
gulp sass
用于输出错误)是否执行了上述操作?是的,更改为
plugins.sass.logError
在插件“sass”消息中给出
错误:sass/application.scss错误:要导入的文件未找到或无法读取:sassy按钮。父样式表:/var/www/drupal-6/sites/all/themes/starter-susy2-nc-d6/sass/application.scss在sass/application.scss的第33行
现在,我们需要查看其他点:gems路径和gulp插件导入时出错
/var/www/drupal-6/sites/all/themes/starter-susy2-nc-d6/sass/‌​application.scss
sass/application.scss
我将提交答案,因为它解决了问题/问题导入错误与scss文件相关,而不是与
吞咽任务相关