最近electron-vite项目中使用sass1.80.4版本,运行时一直发出警告,大致意思是旧的JS API已弃用,并将在Dart Sass 2.0.0中删除。
1. 官网sass-lang.com/d/legacy-js… 也给出了原因和解决发法
翻译一下:虽然旧的JS API在Dart Sass 1.45.0中被标记为已弃用,但随着新API的发布,我们从Dart Sass 1.79.0开始发出使用它的警告。如果你还不能迁移到现代API,但现在想要沉默警告,你可以在silenceDeprecations选项中传递legacy-js-api:
const sass = require('sass');
const result = sass.renderSync({
silenceDeprecations: ['legacy-js-api'],
...
});
这将暂时消除警告,但遗留API将在Dart Sass 2.0.0中完全删除,因此您仍然应该计划尽快迁移它。
2. 最终解决方案:在electron.vite.config.ts中添加配置
export default defineConfig({
renderer: {
css: {
preprocessorOptions: {
scss: {
silenceDeprecations: ['legacy-js-api']
}
}
}
})
这样警告就消除了。