如何在 Gulp Sass 任务中消除弃用警告 - “旧版 JS API 已弃用,将在 Dart Sass 2.0.0 中删除。”

问题描述 投票:0回答:1

我当前的安装如下:

节点 - 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 文件时,必须滚动浏览这些警告是一件很痛苦的事情。

有人有可行的解决方案吗?

sass gulp gulp-sass
1个回答
0
投票

您可以添加选项 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"));
});
© www.soinside.com 2019 - 2024. All rights reserved.