Работа с Gulp, Bundler, Ruby и Susy

Согласно этому можно скомпилировать установку susy из Ruby с помощью Gulp. Но можно ли использовать gulp-sass вместо gulp-compass или gulp-ruby-sass из-за производительности и устаревания? На самом деле я использую это в своем gulpfile.js:

глоток

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, sassy-button и т. д. Можно ли указать глобальный путь для драгоценных камней? Другое дело, устанавливаю ли я gulp-плагины, несмотря на использование gulp-load-plugins? потому что gulp не находит плагины, если я этого не делаю.

Спасибо


person webmaster pf    schedule 25.04.2017    source источник
comment
попробуйте изменить sasscompil на plugins.sass.logError - можете оставить ответ ниже. (мы передаем ошибку обратно в node-sass, который используется gulp-sass для вывода ошибки) ref< /а>   -  person Denis Tsoi    schedule 25.04.2017
comment
вышеописанное сработало?   -  person Denis Tsoi    schedule 25.04.2017
comment
да, меняю на plugins.sass.logError дай мне Error in plugin 'sass' Message: sass/application.scss Error: File to import not found or unreadable: sassy-buttons. Parent style sheet: /var/www/drupal-6/sites/all/themes/starter-susy2-nc-d6/sass/application.scss on line 33 of sass/application.scss   -  person webmaster pf    schedule 25.04.2017
comment
теперь нам нужно позаботиться о других точках: пути к драгоценным камням и плагины gulp   -  person webmaster pf    schedule 25.04.2017
comment
у вас есть ошибка при импорте /var/www/drupal-6/sites/all/themes/starter-susy2-nc-d6/sass/‌​application.scss в sass/application.scss Я собираюсь отправить ответ, поскольку он решил проблему / вопрос, ошибка импорта связана с файлом scss, а не с gulp-task   -  person Denis Tsoi    schedule 25.04.2017
comment
Я так не думаю, ошибка в том, что я на самом деле не указываю путь к соответствующим драгоценным камням, таким как sassy-buttons, это работает для susy.   -  person webmaster pf    schedule 25.04.2017


Ответы (1)


Вам нужно изменить 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))
...
});

документ с глотком:

Передайте параметры так же, как и для node-sass; они будут передаваться так же, как если бы вы использовали node-sass. За исключением параметра данных, который используется внутри gulp-sass. Использование параметра файла также не поддерживается и приводит к неопределенному поведению, которое может быть изменено без предварительного уведомления.

пример

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