【发布时间】:2015-01-17 00:24:55
【问题描述】:
如何使用gulp-ruby-sass 缓存 Sass 文件?似乎它应该是一个默认选项,但事实并非如此。我一定是错过了什么。
watch 任务运行时,每次我在 app/styles/main.scss 中更改某些内容时,gulp-ruby-sass 都会不必要地再次编译 Bootstrap 的 Sass,占用大约 4 -5 额外秒。
我的 app/styles/main.scss 文件如下所示:
// MY PROJECT DEFAULTS
@import “my_project/variables";
// bower:scss
@import "../bower_components/bootstrap-sass-official/vendor/assets/stylesheets/bootstrap.scss";
// endbower
// ...
gulpfile.js 是在 2014 年 11 月 25 日使用 generator-gulp-webapp 0.1.0 生成的,链接到 git repo 的主分支。
样式功能:
gulp.task('styles', function () {
return gulp.src('app/styles/main.scss')
.pipe($.plumber())
.pipe($.rubySass({
style: 'expanded',
precision: 10
}))
.pipe($.autoprefixer({browsers: ['last 1 version']}))
.pipe(gulp.dest('.tmp/styles'));
});
.sass-cache 文件夹正在创建中,其文件夹包括 main.scssc 以及 Bootstrap 的部分。
更新
到目前为止,我已经找到了两种解决方案(虽然不是用于缓存,而是用于更快的编译时间):
1) gulp-ruby-sass version 1.0 (alpha),速度更快,并且适用于源映射。似乎很快就会发布。 Check this
2) gulp-sass 使用 C/C++,速度非常快,但没有一些功能。
【问题讨论】:
标签: caching sass gulp gulp-watch