旧版 JS API 已弃用,并将在 Dart Sass 2.0.0 中删除。与 Vue2

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

我意识到之前已经有人就这个警告提出过类似的问题,但所提出的解决方案都没有为我解决这个问题,或者适用于我的场景。

我最近升级了我的 Vue 2.7 项目中的一些包。除此之外,我从项目中删除了

node-sass
,只使用
sass
(dart-sass)。我必须将
@import
语法更改为
@use
@forward
。现在一切都很好,但是在运行项目时,我收到了许多这样的警告:

The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0.

我发现的建议解决方案基本上建议在 Vite 或等效配置中切换到

modern-compiler
。但是,我的项目使用 webpack (
4.47.0
),主要配置文件是
vue.config.js
。目前是这样:

module.exports = {
  runtimeCompiler: true,
  filenameHashing: false,
  chainWebpack: (config) => {
    config.plugins.delete('prefetch');
  },
  configureWebpack: {
    resolve: {
      alias: {
        // just path aliases
      }
    }
  }
};

此处可能相关的软件包版本:

"vue": "^2.7.14",
"sass": "^1.83.0",
"sass-loader": "^10.5.2",
"webpack": "^4.47.0",
"webpack-cli": "^3.3.6",

为了使用这个新的“现代编译器”并避免这些错误,我到底需要做什么?

最后,作为最后的手段,如果我想暂时消除这些警告,我该怎么做呢?感谢您的帮助。

vue.js webpack sass vuejs2 dart-sass
1个回答
0
投票

此页面并给出那个文档,看起来配置是这样的

module.exports = {
  module: {
    rules: [
      {
        test: /\.s[ac]ss$/i,
        use: [
          "style-loader",
          "css-loader",
          {
            loader: "sass-loader",
            options: {
              api: "modern-compiler",
              sassOptions: {
                // Your sass options
              },
            },
          },
        ],
      },
    ],
  },
};
© www.soinside.com 2019 - 2024. All rights reserved.