我当前的安装如下:
节点 - v20.18.0 Gulp - v5.0.0 Gulp-Sass - v5.1.0 Sass - v1.80.6
我的 gulpfile.js:
const gulp = require("gulp");
const sass = require("gulp-sass")(require("sass"));
gulp.task("sass", function(){
return gulp
.src("./src/sass/*.scss")
.pipe(sass())
.pipe(gulp.dest("./dist/css"));
});
运行“gulp sass”成功完成任务,但它会发出两个弃用警告,每个处理的 scss 文件一个:
❯ gulp sass
[13:05:58] Using gulpfile ~\Dev\Udemy\Gulp4\Section2\gulpfile.js
[13:05:58] Starting 'sass'...
Deprecation Warning: The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0.
More info: https://sass-lang.com/d/legacy-js-api
Deprecation Warning: The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0.
More info: https://sass-lang.com/d/legacy-js-api
[13:05:58] Finished 'sass' after 87 ms
我彻底阅读了 gulp-sass 和 sass 的文档,但是我无法通过在 gulpfile.js 中将“silenceDeprecations”设置为正确的值来消除这些弃用警告。当处理多个 scss 文件时,必须滚动浏览这些警告是一件很痛苦的事情。
有人有可行的解决方案吗?
您可以添加选项 silenceDeprecations 来暂时隐藏这些警告:
const gulp = require("gulp");
const sass = require("gulp-sass")(require("sass"));
gulp.task("sass", function(){
return gulp
.src("./src/sass/*.scss")
.pipe(sass({
silenceDeprecations: ['legacy-js-api'],
}))
.pipe(gulp.dest("./dist/css"));
});