【问题标题】:Getting Libsass Gulp Susy to work together让 Libsass Gulp Susy 一起工作
【发布时间】:2015-02-16 12:12:50
【问题描述】:

在过去的 5 天里,我一直在玩这个,并试图让以下内容一起工作:

¬ Libsass
¬ Susy
¬ Gulp

但现在我已经成功了,我刚刚从 45s 转到 700ms,这是我觉得我应该分享的东西。

最初的问题

吞咽

gulp.task('sass', function () {
    return gulp.src('./frontend/sass/style.scss')
        .pipe(sass({
            'require':'susy'
        }))
        .pipe(gulp.dest('./app/www/css'))
});

萨斯

@import "susy";

初始错误

[23:58:08] Starting 'sass'...

stream.js:94
      throw er; // Unhandled stream error in pipe.
            ^
Error: file to import not found or unreadable: susy
Current dir: C:/var/www/www.hutber.com/frontend/sass/

【问题讨论】:

    标签: gulp susy libsass


    【解决方案1】:

    完整的工作设置

    package.json

    "devDependencies": {
        "gulp": "~3.8.10",
        "gulp-sass": "~1.3.2", //this installs libsass for us
        "gulp-sourcemaps": "~1.3.0",
        "gulp-plumber": "~0.6.6",
        "susy":"~2.2.2"
    }
    

    Gulp sass 任务

    var gulp = require('gulp');
    var sass = require('gulp-sass');
    var handleErrors = require('../util/handleErrors');
    var sourcemaps = require('gulp-sourcemaps');
    var minifyCSS = require('gulp-minify-css');
    
    //libsass
    gulp.task('sass', function () {
        return gulp.src('./frontend/sass/style.scss')
            .pipe(sourcemaps.init())
            .pipe(sass({
                includePaths: [
                    './node_modules/susy/sass' //required for sass
                ]
            }))
            //.pipe(minifyCSS()) //move to prod settings
            .pipe(sourcemaps.write('./app/www/css')))
            .pipe(gulp.dest('./app/www/css'))
    });
    

    萨斯

    @import "susy";
    
    $susy: (
        global-box-sizing: border-box,
        use-custom: (rem: true),
        columns: 12,
        gutters: (1/4),
        debug: (
            image: hide,
            color: rgba(#66f, .25),
            output: background,
            toggle: top right,
        )
    );
    

    错误

    您需要执行以下操作以避免在运行任务时出现may only compare numbers 错误

    更新 node-sass 的 package.json

    我必须按如下方式更新 libsass 的依赖项:

    gulp-sass 1.3.1 
      ¬ node-sass 2.0.0-beta
         ¬ libsass 3.1.0-beta - This needed updating to libsass 3.1.0-beta.2
    

    一旦node-sass 更新其依赖项以使用最新的libsass,以上内容将变得多余

    最后一步

    然后在我的 sass 中使用 (1/4) 而不仅仅是 1/4。这将迫使它被视为一个数字。取自https://github.com/sass/libsass/issues/590的错误

    您应该能够运行 gulp sass 而不会出现任何错误。

    【讨论】:

    • 它不工作@import "susy";它很好工作@_import "susy";为什么?
    猜你喜欢
    • 1970-01-01
    • 2014-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多