2014-02-19 5 views
0

Я только начинаю с Gulp.js и Sass, и я застрял в использовании миксинов.gulp-ruby-sass не может найти mixins

Вот мой gulp.js файл:

var gulp = require('gulp'); 
var autoprefixer = require('gulp-autoprefixer'); 
var sass = require('gulp-ruby-sass'); 

gulp.task('css', function(){ 

    return gulp.src('./assets/scss/main.scss') 
     .pipe(sass({ 
      style: 'expanded', 
      noCache: true 
     })) 
     .pipe(autoprefixer('last 5 versions')) 
     .pipe(gulp.dest('./assets/css')); 
}); 

gulp.task('watch', function(){ 
    gulp.watch('./assets/scss/*.scss', ['css']); 
}); 

gulp.task('default', ['css', 'watch']); 

И это мой main.scss файл:

#data { 
    @include left(10px); 
    @include table-base; 
} 

Это ошибка производит:

events.js:72 
     throw er; // Unhandled 'error' event 
      ^
[gulp] Error in plugin 'gulp-ruby-sass': 
Syntax error: Undefined mixin 'left'. 
     on line 2 of /vagrant/gulp_test_1/assets/scss/main.scss, in `left' 
     from line 2 of /tmp/a4d96d4a-b823-4828-a37c-eab307477784/main.scss 

    at ChildProcess.<anonymous> (/vagrant/gulp_test_1/node_modules/gulp-ruby-sass/index.js:74:25) 
    at ChildProcess.EventEmitter.emit (events.js:98:17) 
    at maybeClose (child_process.js:743:16) 
    at Process.ChildProcess._handle.onexit (child_process.js:810:5) 

Все остальные Sass материал работает нормально. Это просто миксины, которые вызывают ошибку.

Я установил Compass 0.12.2

мне не хватает каких-либо драгоценных камней/модулей?

Система работает на Vagrant с виртуальной машиной Ubuntu.

ответ

1

@include должен указывать на mixin или библиотеку, которую вы импортируете при начале одного и того же файла.

Вам не хватает и @import в начале и в любом месте слева (10 пикселей); исходит от , если это ваш собственный микшин или библиотека компаса, которую он должен сначала импортировать.

 Смежные вопросы

  • Нет связанных вопросов^_^