gpt4 book ai didi

javascript - Gulp.js 与基础/compass

转载 作者:数据小太阳 更新时间:2023-10-29 06:11:45 26 4
gpt4 key购买 nike

有没有人成功让 Gulp-sass 与 foundation 4/5 一起工作(最好使用 compass ?)

该应用程序成功地使用了基础 4,没有 gulp,使用 compass watch。但我想开始使用 gulp 来简化我的 sass/coffee/minification 编译。

这是我的 gulpfile.js

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']);

这对于 coffee 脚本编译非常有用,但在涉及到 sass/compass 时在注释行失败。

[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/coffee 中添加基础文件,这样它就不必依赖于查看我的 .rvm/../gems 文件夹??

最佳答案

尝试 gulp-compass而不是 gulp-sass。

编辑

首先让我为我糟糕的回答道歉。

我自己测试了 gulp-compass 并且它有效。我不确定您的 Foundation 设置,但我在 Getting Started on SASS 上选择了 Using Foundation With Compass .

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

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 将是:

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));
});

对于“compass()”的选项,“css”应该是“config.rb”中的“css_dir”,“sass”应该是“sass_dir”,如the README of gulp-compass 中所述。 .

希望它对你有用。

关于javascript - Gulp.js 与基础/compass ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21744668/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com