首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带基础/罗盘的Gulp.js

带基础/罗盘的Gulp.js
EN

Stack Overflow用户
提问于 2014-02-13 03:34:40
回答 1查看 7.7K关注 0票数 5

是否有人成功地使用了基金会的4/5 (最好是指南针?)

该应用程序正在成功地使用基金会4,没有吞咽,使用compass watch。但是我想开始使用gulp来简化我的sass/咖啡/小型化编译。

这是我的gulpfile.js

代码语言:javascript
复制
var gulp   = require('gulp'),
    util   = require('gulp-util'),
    sass   = require('gulp-sass'),
    coffee = require('gulp-coffee');

var paths = {
    scripts: {
        src:  'src/coffee/**/*.coffee',
        dest: 'public/javascripts'
    },
    styles: {
        src:  'src/sass/*.sass',
        dest: 'public/stylesheets'
    }
};

gulp.task('scripts', function() {
    return gulp.src(paths.scripts.src)
        .pipe(coffee())
        .pipe(gulp.dest(paths.scripts.dest));
});

gulp.task('sass', function () {
   return gulp.src(paths.styles.src)
        .pipe(sass({errLogToConsole: true}))
        .pipe(gulp.dest(paths.styles.dest));
});

gulp.task('watch', function () {
  gulp.watch(paths.scripts.src, ['scripts']);
  gulp.watch(paths.styles.src, ['sass']);
});

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

这对于咖啡脚本的编译非常有用,但是在注释行中失败,当涉及到sass/sass时。

代码语言:javascript
复制
[gulp] Using file path/gulpfile.js
[gulp] Working directory changed to path
[gulp] Running 'scripts'...
[gulp] Running 'sass'...
[gulp] Running 'watch'...
[gulp] Finished 'watch' in 15 ms
[gulp] [gulp-sass] source string:1: error: @import directive requires a url or quoted path
// Here is what's throwing me for a loop. I'm assuming that it has something to do with
// gulp-sass not utilizing the ruby gem's source files for zurb-foundation/compass
[gulp] Finished 'sass' in 115 ms
[gulp] Finished 'scripts' in 122 ms
[gulp] Running 'default'...
[gulp] Finished 'default' in 11 μs

有办法解决这个问题吗?还是我最好的选择是将基础文件从4升级到5,并将基础文件添加到src/咖啡中,这样它就不必依赖于查看我的.rvm/../gems文件夹了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-13 05:12:39

试试吞咽罗盘,而不是狼吞虎咽的。

编辑

让我先为我的拙劣回答道歉。

我自己测试了一下罗盘,结果成功了。我不确定您的基础设置,但我选择的是使用开始学习SASS上的Compass与基金会。

我的gulpfile.js的相关部分是:

代码语言:javascript
复制
var compass = require('gulp-compass');

var paths = {
  styles: {
    src:  'scss/*.scss',
    dest: 'stylesheets'
  }
};

gulp.task('sass', function () {
  return gulp.src(paths.styles.src)
    .pipe(compass({
      config_file: './config.rb',
      css: 'stylesheets',
      sass: 'scss'
    }))
    .pipe(gulp.dest(paths.styles.dest));
});

上面的例子有一个与您不同的目录结构。因此,您的gulpfile.js应该是:

代码语言:javascript
复制
var compass = require('gulp-compass');

var paths = {
  styles: {
    src:  'src/sass/*.sass',
    dest: 'public/stylesheets'
  }
};

gulp.task('sass', function () {
  return gulp.src(paths.styles.src)
    .pipe(compass({
      config_file: './config.rb',
      css: 'stylesheets',
      sass: 'sass'
    }))
    .pipe(gulp.dest(paths.styles.dest));
});

对于“罗盘()”的选项,“css”应该是您在“css_dir”中的“config.rb”,“sass”应该是“sass_dir”,如吞咽罗盘的自传中所描述的。

希望它能对你有用。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21744668

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档