所以,就像很多刚接触Gulp的人一样,我正在努力让我的开发机器(win7,xampp,drupal)正常工作或gulp-ruby-sass。
我的问题很简单:如何通过livereload将浏览器编译到我的浏览器中?
我可以确认我的SASS使用指南针监视器或捆绑执行保护程序正确编译,但是在drupal上使用Omega4设置的常规livereload非常缓慢。有人建议我调查gulp / grunt,所以我做了,并选择了gulp,因为它报告了易于配置
我还在我的网络服务器的根目录中正确安装了gulp,我可以通过命令行单独调用我的gulp文件中的少数函数,也可以通过gulp调用整个文件。
我遇到的问题是gulp-sass和gulp-ruby-sass都不会起作用!
使用gulp-ruby-sass我收到arguments to path.join must be strings
错误。错误发生在此函数的第二行:
gulp.task('styles', function() {
return sass('postercatalogue/sites/all/themes/postomega/sass/**/*.scss', {style:'expanded'})
.pipe(sass({bundleExec: true, require: "sass-globbing"}))
.pipe(gulp.dest('./css'))
.pipe(livereload());
});
有了gulp-sass,我收到错误file to import not found or unreadable: variables/**/*
gulp.task('styles', function() {
gulp.src('postercatalogue/sites/all/themes/postomega/sass/**/*.scss', {style:'expanded'})
.pipe(sass({bundleExec: true, require: "sass-globbing"}))
.pipe(gulp.dest('./css'))
此错误也发生在src / return sass行。我知道gulp-ruby-sass版本之间的语法有所改变,但是没有一个新的语法更改对我有用,而且gulp-sass不应该有文件globbing(?!)的问题。
我不知道我需要哪种依赖关系或语法组合才能实现这一目标。
供参考,这是我的gulpfile和依赖项供参考。
var gulp = require('gulp');
//var sass = require('gulp-sass');
var sass = require('gulp-ruby-sass');
var maps = require('gulp-sourcemaps');
var livereload = require('gulp-livereload');
gulp.task('styles', function() {
return sass('postercatalogue/sites/all/themes/postomega/sass/**/*.scss', {style:'expanded'})
.pipe(sass({bundleExec: true, require: "sass-globbing"}))
.pipe(gulp.dest('./css'))
.pipe(livereload());
});
gulp.task('watch', function(){
livereload.listen();
gulp.watch('sass/**/*.scss',['styles']);
});
gulp.task('default',['styles','watch']);
{
"name": "postercatalogue",
"version": "0.1.0",
"devDependencies": {
"gulp": "^3.9.0",
"gulp-connect": "^2.2.0",
"gulp-livereload": "^3.8.0",
"gulp-ruby-sass": "^1.0.5",
"gulp-sass": "^2.0.1",
"gulp-sourcemaps": "^1.5.2"
}
}
提前致谢。
答案 0 :(得分:0)
通过使用gulp-ruby-sass和正确的src语法并确保params&#34; bundleExec:true,compass:true,需要:&#34; sass-globbing&#34; < / p>