⚠️

ViteでSassを使ったら警告が出たときの対処法

2024/09/23に公開

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  

https://sass-lang.com/d/legacy-js-api

対処法

vite.config.js(ts)に設定を追加する

import { defineConfig } from "vite";
// ...
export default defineConfig({
  // ...
  css: {
    preprocessorOptions: {
      scss: {
        api: "modern-compiler",
      },
      // sassの場合は
      // sass: {
      //   api: "modern-compiler",
      // },
    },
  },
});

https://vitejs.dev/config/shared-options#css-preprocessoroptions

sass-embedded

Dartをそのまま実行するから速い(らしい)
https://www.npmjs.com/package/sass-embedded

Discussion