求助:Vite项目中Dart Sass遗留JS API弃用警告问题
Dart Sass 遗留JS API 弃用警告无法解决的问题
遇到 Deprecation Warning: The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0. 警告,在其他求助帖中未找到有效解决方案。
尝试过以下常规配置,但无效果:
css: { preprocessorOptions: { scss: { api: "modern-compiler", // or "modern", "legacy" importers: [], }, }, },
当前Vite配置
default.config.ts
// default.config.ts export const defaultConfig: InlineConfig = { css: { preprocessorOptions: { scss: { api: "modern-compiler", importers: [], }, }, }, plugins: [ tsPaths(), solidPlugin(), ], resolve: { alias: { "@styles": path.resolve(__dirname, "src/styles"), }, }, };
dev.config.ts
// dev.config.ts export default defineConfig({ server: { host: "0.0.0.0", port: 3000, strictPort: true, open: true, hmr: true, }, ...defaultConfig, });
package.json 内容
{ "name": "project", "version": "0.0.0", "description": "", "type": "module", "scripts": { "dev": "vite --host", "build": "VITE_APP_ENV=production vite build", "serve": "vite preview" }, "license": "MIT", "devDependencies": { "@fullhuman/postcss-purgecss": "^6.0.0", "@types/node": "^22.5.5", "@types/pako": "^2.0.3", "@types/postcss-normalize": "^9.0.4", "cssnano": "^7.0.6", "lightningcss": "^1.27.0", "postcss": "^8.4.47", "postcss-combine-duplicated-selectors": "^10.0.3", "sass": "^1.78.0", "solid-devtools": "^0.29.2", "svgo": "^3.3.2", "terser": "^5.32.0", "typescript": "^5.3.3", "vconsole": "^3.15.1", "vite": "^5.0.11", "vite-bundle-visualizer": "^1.2.1", "vite-plugin-html-minifier-terser": "^3.8.0", "vite-plugin-solid": "^2.8.2", "vite-plugin-solid-svg": "^0.8.1", "vite-tsconfig-paths": "^5.0.1" }, "dependencies": { "@solidjs/router": "^0.14.5", "lottie-web": "^5.12.2", "pako": "^2.1.0", "solid-js": "^1.8.11" } }
已尝试的排查操作:
- 添加、移除scss和sass相关配置
- 删除Vite插件
- 修改配置参数
- 重装所有依赖包
以上操作均无法解决问题。
版本测试更新
- 此问题疑似与Vite版本相关,推测Vite 5.4.6版本导致该警告出现(Vite 5.4.5版本可正常运行)。
- 测试Vite 5.4.0以下版本仍存在该问题,但此前项目运行一切正常。
内容的提问来源于stack exchange,提问作者Dmitriy
相关产品推荐
相关产品推荐

