【问题标题】:Gulp 4 - detect changes in old version, but not add new class to cssGulp 4 - 检测旧版本中的更改,但不向 css 添加新类
【发布时间】:2020-01-19 01:16:41
【问题描述】:

我的 gulp 4 有一个可笑的问题。

我有来自我的程序员的代码。 我尝试对代码进行一些更改 - 一切正常(更改 px 或向现有类添加新属性)。

当我想向 scss 添加新的类/id 时,问题就开始了。 Gulp 没有检测到添加的类,甚​​至是新的 id。

如果我添加新的@import 文件,Gulp 会检测到新文件但里面有任何新代码...

(() => {

  'use strict';



  const


    devBuild = ((process.env.NODE_ENV || 'development').trim().toLowerCase() === 'development'),


    dir = {
      src: 'src/',
      build: 'build/'
    },


    gulp = require('gulp'),
    del = require('del'),
    noop = require('gulp-noop'),
    newer = require('gulp-newer'),
    size = require('gulp-size'),
    imagemin = require('gulp-imagemin'),
    sass = require('gulp-sass'), // or use gulp-dart-sass
    postcss = require('gulp-postcss'),
    sourcemaps = devBuild ? require('gulp-sourcemaps') : null,
    browsersync = devBuild ? require('browser-sync').create() : null;


  console.log('Gulp', devBuild ? 'development' : 'production', 'build');




  function clean() {

    return del([dir.build]);

  }
  exports.clean = clean;
  exports.wipe = clean;



  const imgConfig = {
    src: dir.src + 'images/**/*',
    build: dir.build + 'images/',
    minOpts: {
      optimizationLevel: 5
    }
  };

  function images() {

    return gulp.src(imgConfig.src)
      .pipe(newer(imgConfig.build))
      .pipe(imagemin(imgConfig.minOpts))
      .pipe(size({
        showFiles: true
      }))
      .pipe(gulp.dest(imgConfig.build));

  }
  exports.images = images;




  const cssConfig = {

    src: dir.src + 'scss/main.scss',
    watch: dir.src + 'scss/**/*',
    build: dir.build + 'css/',
    sassOpts: {
      sourceMap: devBuild,
      imagePath: '/images/',
      precision: 3,
      errLogToConsole: true
    },

    postCSS: [
      require('usedcss')({
        html: ['index.html']
      }),
      require('postcss-assets')({
        loadPaths: ['images/'],
        basePath: dir.build
      }),
      require('autoprefixer')({
        browsers: ['> 1%']
      }),
      require('cssnano')
    ]

  };


  function css() {

    return gulp.src(cssConfig.src)
      .pipe(sourcemaps ? sourcemaps.init() : noop())
      .pipe(sass(cssConfig.sassOpts).on('error', sass.logError))
      .pipe(postcss(cssConfig.postCSS))
      .pipe(sourcemaps ? sourcemaps.write() : noop())
      .pipe(size({
        showFiles: true
      }))
      .pipe(gulp.dest(cssConfig.build))
      .pipe(browsersync ? browsersync.reload({
        stream: true
      }) : noop());

  }
  exports.css = gulp.series(images, css);




  const syncConfig = {
    server: {
      baseDir: './',
      index: 'index.html'
    },
    port: 8000,
    open: false
  };


  function server(done) {
    if (browsersync) browsersync.init(syncConfig);
    done();
  }




  function watch(done) {

    // image changes
    gulp.watch(imgConfig.src, images);

    // CSS changes
    gulp.watch(cssConfig.watch, css);

    done();

  }



  exports.default = gulp.series(exports.css, watch, server);

})();

【问题讨论】:

  • 欢迎来到stackoverflow!您能否提供有关您的问题的更多信息,具体来说,您要添加哪些类和 ID,以及它们在哪里使用?

标签: npm sass gulp


【解决方案1】:

问题解决了...(我希望) 我已经安装了https://www.npmjs.com/package/webpack/v/4.28.4

现在可以了。

【讨论】:

    猜你喜欢
    • 2022-01-06
    • 2017-08-21
    • 2016-02-11
    • 1970-01-01
    • 1970-01-01
    • 2021-08-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多