我在使用 Foundation 6 文件时遇到了一些问题,由于某些原因,它们没有包含所有 sass 组件。我尝试使用 Foundation 5,效果很好。

这是我的吞咽任务:

gulp.task('styles', ['clearCss'], function() {
    gulp.src('assets/sass/app.scss')
        .pipe(plumber(plumberErrorHandler))
        .pipe(sourcemaps.init())
        .pipe(sass({
            outputStyle: 'compressed'
        })
        .on('error', notify.onError(function(error) {
            return "Error: " + error.message;
        }))
        )
        .pipe(autoprefixer({
            browsers: ['last 2 versions', 'ie >= 9']
        }))
        .pipe(sourcemaps.write('.'))
        .pipe(gulp.dest('./assets/dist/css'))
        .pipe(browserSync.stream({match: '**/*.css'}))
        .pipe(notify({
            message: "Styles task complete!"
        }));
});

这是我的 app.scss:
// Import Foundation
@import "../components/foundation/scss/foundation";

它适用于我自己的 sass 文件,但完全忽略了基础部分。

最佳答案

您应该导入文件foundation-sites.scss,而不是scss/foundation.scss。文件foundation.scss 只有一个 @mixinfoundation-everything 包含在foundation-sites.scss 中:

@include foundation-everything;

但是foundation-sites.scss在6.0.4有错误,这是我的日志:
Error in plugin 'sass'
Message:
    bower_components\foundation-sites\foundation-sites.scss
Error: File to import not found or unreadable: foundation
       Parent style sheet: stdin
        on line 1 of stdin
>> @import 'foundation';

修复:

将文件 foundation-sites.scss 中的第 1 行更改为@import 'foundation';@import 'scss/foundation';

关于Gulp-sass 没有正确编译 Foundation 6,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33919299/

10-13 07:28