【问题标题】:gulp-ruby-sass plugin not caching Sass filesgulp-ruby-sass 插件不缓存 Sass 文件
【发布时间】: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 的主分支。

See the gulpfile.js here

样式功能:

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


    【解决方案1】:

    我希望您的问题与https://github.com/sindresorhus/gulp-ruby-sass/issues/111 有关。尽管此问题仍然存在,但在使用 generator-gulp-webapp 0.3.0(和 gulp-ruby-sass 1.0.1 与 Sass 3.4.13(选择性史蒂夫))时,我无法确认您的问题

    generator-gulp-webapp 0.3.0 默认附带gulp-sass。使用 Sass 和 Bootstrap 安装 gulp-webapp 后,我将 styles 任务替换如下:

    gulp.task('styles', function () {
        return $.rubySass('app/styles/main.scss') 
        .on('error', function (err) {
          console.error('Error!', err.message);
       })
        .pipe(gulp.dest('.tmp/styles'))
        .pipe(reload({stream: true}));
    });
    

    更改main.scss 后,watch 任务运行并输出:

    [BS] 1 file changed (main.css) 
    [15:53:17] Finished 'styles' after 20 s
    

    现在.sass-cache 文件夹的内容如下所示:

    /.sass-cache$ ls -la
    total 24
    drwxrwxr-x 6 bass bass 4096 Apr 13 15:40 .
    drwxrwxr-x 9 bass bass 4096 Apr 13 15:48 ..
    drwxrwxr-x 2 bass bass 4096 Apr 13 15:40 721aed65acc825809156d020625072c6ea20be50
    drwxrwxr-x 2 bass bass 4096 Apr 13 15:40 b311c6377fb599f57cc8c0d0c360c9b83a27e34b
    drwxrwxr-x 2 bass bass 4096 Apr 13 15:40 d1eb2de86ef2be3a4571ad5415b5156c01618faf
    drwxrwxr-x 2 bass bass 4096 Apr 13 15:53 e2b546d387a82bc59b03d84e84d775c05a23ac82
    

    据了解,只有 e2b546d387a82bc59b03d84e84d775c05a23ac82 已更改,其中仅包含 main.scss 的缓存版本。

    【讨论】:

      猜你喜欢
      • 2016-01-10
      • 2014-07-04
      • 2014-09-12
      • 2016-01-11
      • 2014-11-30
      • 2014-02-28
      • 1970-01-01
      • 1970-01-01
      • 2015-02-27
      相关资源
      最近更新 更多