Gulp似乎无法找到指南针mixin [英] Gulp can't seem to find compass mixins

查看:155
本文介绍了Gulp似乎无法找到指南针mixin的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



我正在尝试将gulp作为Grunt的替代构建工具,将我的scss编译为css,因为我听说它可以更快。即使是我的scss文件的基本编译问题。我尝试过使用 gulp-sass gulp-ruby-sass gulp-compass 插件进行吞吐,并且我得到了几乎相同的错误消息每次:

 错误screen.scss(_grid.scss的第2行:未定义的混入框大小)。

所以它看起来就像一旦碰到罗盘mixin就会掉下来。我在我的PC上安装了ruby,使用罗盘版本1.0.0.alpha.19和sass 3.3.7版本。



这是我的gulp文件:

  var gulp = require('gulp'),
compass = require('gulp-compass'),
sass = require ( '吞掉-红宝石SASS');
$ b gulp.task('compass',function(){
gulp.src('../ sass / UK / screen.scss')
.pipe(compass {
css:'../css',
sass:'../sass',
sourcemap:true,
style:'compressed'
}) )
.pipe(gulp.dest('../ css / UK / screen.css'));
});

gulp.task('sass',function(){
gulp.src('../ sass / UK / ** / *。scss')
.pipe (sass({style:'compressed',sourcemap:true}))
.pipe(gulp.dest('../ css / UK'));
});

任何想法如何告诉它我的指南针副本安装在哪里?我认为它是全球安装的。

解决方案

You right, compass should至少可以轻松地在您的系统上全局安装以完成此项工作。我建议您卸载sass和指南针以便使用

  gem卸载sass&& gem uninstall compass 

然后重新安装它们:

  gem install sass 
gem install compass --pre

然后,您可以像这样定义一个gulp任务

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

return gulp.src('../ sass / UK / screen.scss')
.pipe(sass({compass:true,sourcemap:true,style:'compressed '}))
.pipe(gulp.dest('../ css / UK / screen.css'));

});


I am trying out gulp as an alternative build tool to Grunt, to compile my scss to css, as I have heard it can be much faster.

I having problems doing even a basic compile of my scss files. I have tried using the gulp-sass, gulp-ruby-sass and gulp-compass plugins for gulp and I get pretty much the same error message every time:

error screen.scss (Line 2 of _grid.scss: Undefined mixin 'box-sizing'.)

So it looks like it is falling down as soon as it hits a compass mixin. I have ruby installed on my PC with compass version 1.0.0.alpha.19 and sass version 3.3.7.

Here is my gulpfile:

var gulp = require('gulp'),
compass = require('gulp-compass'),
sass = require('gulp-ruby-sass');

gulp.task('compass', function() {
gulp.src('../sass/UK/screen.scss')
.pipe(compass({
    css: '../css',
    sass: '../sass',
  sourcemap: true,
  style: 'compressed'
}))
.pipe(gulp.dest('../css/UK/screen.css'));
});

gulp.task('sass', function () {
  gulp.src('../sass/UK/**/*.scss')
      .pipe(sass({ style: 'compressed', sourcemap: true }))
      .pipe(gulp.dest('../css/UK'));
});

Any ideas how I tell it where my copy of compass is installed? I thought it was installed globally.

解决方案

You right, compass should be installed globally on your system to get this work, at least easily. I recommend you to uninstall sass and compass to get something clean using

gem uninstall sass && gem uninstall compass

And then re-install them with :

gem install sass
gem install compass --pre

And after you can define a gulp task like so

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

  return gulp.src('../sass/UK/screen.scss')
    .pipe(sass({ compass: true, sourcemap: true, style: 'compressed' }))
    .pipe(gulp.dest('../css/UK/screen.css'));

});

这篇关于Gulp似乎无法找到指南针mixin的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆