【问题标题】:Disabling compass/scss source maps禁用指南针/scss 源地图
【发布时间】:2014-10-17 10:35:50
【问题描述】:

我正在使用最新版本的 sass 和 compass 并使用 gulp-compass 进行构建。即使我在 config.rb 文件中设置了 sourcemap=false 并在 gulp-compass 选项中设置了选项 sourcemap:false,我也得到了 .map 源映射文件。我有时想禁用源映射以加快构建速度。生成源映射时运行 gulp 任务大约需要两倍的时间。有什么建议吗?

config.rb:

http_path = "/"
css_dir = "css"
sass_dir = "sass"
images_dir = "img"
javascripts_dir = "js"
sourcemap = false
output_style = ":compact"

gulp.js:

gulp.task('compass', function() {
    return gulp.src(['sass/screen.scss', 'sass/screen_fallback.scss']).pipe(compass({
        config_file: 'config.rb',
        css: 'css',
        sass: 'sass',
        sourcemap: false
    })).on('error', function(err) {
        notify({
            message: err
        })
    }).pipe(notify({
        message: 'Compass processed.'
    })).pipe(minifycss()).pipe(rename({
        suffix: '.min'
    })).pipe(gulp.dest('css')).pipe(notify({
        message: 'CSS minified.'
    }));
});

【问题讨论】:

  • 目前有一个关于此主题的已关闭问题:github.com/appleboy/gulp-compass/issues/60
  • @DomiAlex 看起来没有发布解决方案。谢谢。
  • 我的“解决方案”是在构建文件后运行 rimraf 来删除文件。例如:code gulp.task('deleteMap', ['compass'], function () { return gulp.src(paths.css + '/*.map', {read: false}) .pipe(rimraf( {force: true})); }); code 然后你把这个:code gulp.task('build', ['compass', 'deleteMap']); code
  • @DomiAlex 是的,这会删除地图,但最初仍会创建地图 - 这就是指南针过程缓慢的原因。
  • 我从没想过这会减慢指南针的速度。有趣的。你也应该在我提出的问题中发布这个:github.com/appleboy/gulp-compass/issues/70

标签: compass-sass gulp


【解决方案1】:

您可以尝试使用 compass: true 选项运行 gulp-ruby-sass。这是您的任务更改为使用 gulp-ruby-sass:

gulp.task('compass', function() {
    return gulp.src(['sass/screen.scss', 'sass/screen_fallback.scss']).pipe(rubysass({
        'sourcemap=none': true,
        compass: true
    })).on('error', function(err) {
        notify({
            message: err
        })
    }).pipe(notify({
        message: 'Compass processed.'
    })).pipe(minifycss()).pipe(rename({
        suffix: '.min'
    })).pipe(gulp.dest('css')).pipe(notify({
        message: 'CSS minified.'
    }));
});

【讨论】:

  • 这解决了我的问题。 Gulp-ruby-sass 在使用引导程序时会中断,因为它找不到图标字体路径。我必须在 config.rb 中设置 font_dir,然后告诉 gulp-ruby-sass 使用 compass。这解决了我的特定问题。
猜你喜欢
  • 1970-01-01
  • 2016-06-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-12
  • 2013-03-09
  • 2011-02-20
  • 1970-01-01
相关资源
最近更新 更多