【问题标题】:Why is gulp compiling my SCSS files in alphabetical order?为什么 gulp 按字母顺序编译我的 SCSS 文件?
【发布时间】:2018-02-08 17:52:27
【问题描述】:

我以前从未遇到过这种情况,而且我通常使用相同的 gulpfile。我所有的 SCSS 文件都是按字母顺序编译的,这意味着事情没有被正确覆盖。这是编译消息。 (注意,我已经涂黑了我客户的名字)

这是我的 style.scss 文件

//Mixins
@import 'mixins';

//Globals
@import 'config';
@import 'global/global';

//Header
@import 'global/header';

//Company
@import 'company/leadership';


//Social buttons
@import 'social/social_buttons';

@import 'company/contact-us';

@import 'company/events-listing';

//Active Data Fabric tweak
@import 'active/active-data-fabric';

// News CPT Single
@import 'news/single';

//Resource Listing
@import 'resources/listing';

//Resource Single
@import 'resources/single';

//Products
@import 'products/products';

//Featured Testimonials
@import 'featured_testimonials/index';

//Videos Page
@import 'videos/index';

//Header Override
@import 'resources/header';

//Support Page
@import 'support/overview';

// Careers Page
@import 'company/careers';

//Search Page
@import 'search/index.scss';

// Import Views
@import 'views/home';

这是我的 gulpfile

var gulp = require('gulp');
var minifycss = require('gulp-cssnano');
var autoprefixer = require('gulp-autoprefixer');
var notify = require('gulp-notify');
var sass = require('gulp-ruby-sass');
var concat = require('gulp-concat');
var sourcemaps = require('gulp-sourcemaps');

gulp.task('css', function() {
    return sass('scss/**/*.scss')
        .pipe(sourcemaps.init())
        .pipe(autoprefixer())
        .pipe(concat('style.css'))
        .on('error', sass.logError)
        .pipe(minifycss())
        .pipe(sourcemaps.write(''))
        .pipe(gulp.dest('./scss'))
            .pipe(notify({ message: 'Wait for it....wait for it!!!' }));
});

gulp.task('default', function() {
    gulp.watch('scss/**/*.scss',['css']);
});

就像我说的,这种情况以前从未发生过,所以我很茫然。文件不应该按照style.scss文件中指定的顺序编译吗?

【问题讨论】:

    标签: css sass gulp gulp-sass


    【解决方案1】:

    您的**/*.scss 通配符按字母顺序选择文件。由于** 递归到目录结构的底部,它按字母顺序返回目录,每个目录中的文件也按字母顺序排序。

    这是通配符的预期输出。

    【讨论】:

    • 啊,谢谢你的解释。我是前端开发人员,所以我迷失了这些东西。我主要从教程中复制和粘贴 gulpfile。我将如何修复它以遵循我的 style.scss 文件中列出的编译顺序?
    • 哦,我知道了!我刚刚用 style.scss 替换了 */.scss 并且它编译正确。感谢您让我走上正轨!
    • 您可能只需将其更改为style.scss,它就会导入您拥有的所有内容。很高兴听到它成功了!
    猜你喜欢
    • 1970-01-01
    • 2014-01-24
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 2017-11-03
    • 1970-01-01
    • 2018-06-21
    • 1970-01-01
    相关资源
    最近更新 更多