scss中所做的更改不起作用

时间:2016-11-01 06:27:06

标签: javascript sass gulp gulp-sass

当我运行gulp时,它会识别任何scss文件中所做的任何更改。它甚至将它缩小为一个css文件夹中的style.min.css,该文件夹位于build文件夹中,并且该站点在我的localhost上刷新。

我的问题是,我在scss文件中所做的任何更改实际上都不会在网站上发生。如果我在style.css文件中进行更改并手动刷新站点,则会使用相同的更改进行更新。

gulp.task('sass', function() {
   return gulp.src('./sass/style.scss')
      .pipe(plumber(plumberErrorHandler))
      .pipe(sass())
      .pipe(autoprefixer({
         browsers: ['last 2 versions']
      }))
      .pipe(cssnano())
      .pipe(rename('style.min.css'))
      .pipe(gulp.dest('./build/css'));
});

gulp.task('watch', ['browserSync', 'sass', 'scripts'], function (){
   gulp.watch('./sass/*.scss', ['sass']);
   gulp.watch('./js/*.js', ['scripts']);
});

1 个答案:

答案 0 :(得分:0)

您正在观看路径./sass/*.scss,我假设您在此./sass/文件夹中有一个子文件夹。

导入部分文件是因为您在编辑主style.scss样式表时可以看到更改。

问题在于监视任务只是在观看名为 sass 的文件夹,但它还必须查看子文件夹及其.scss内容。例如:

gulp.task('watch', ['browserSync', 'sass', 'scripts'], function (){
    gulp.watch('./sass/*.scss', ['sass']);
    gulp.watch('./sass/**/*.scss', ['sass']);
    gulp.watch('./js/*.js', ['scripts']);
});

/**/确保同时监视任何子文件夹及其内容。