报错

DEPRECATION WARNING [legacy-js-api]: 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 [import]: Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.
More info and automated migrator: https://sass-lang.com/d/import

│ @import '@/uni_modules/vk-uview-ui/theme.scss';

│         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

 src\styles\index.scss 1:9  root stylesheet

环境

"sass": "^1.54.5",
"vue": "^3.4.21",
"vite": "5.2.8",
"eslint": "^8.22.0",
"eslint-plugin-vue": "^9.4.0",

node 22.14.0
HBuilderX 4.66
"@dcloudio/uni-app": "3.0.0-alpha-4060320250423001"

解决方案

1)最简单-隐藏控制台的报错

修改项目 /vite.config.ts [.js], 添加红色部分

// https://vitejs.dev/config/
export default defineConfig({
    css: {
        postcss: {
            plugins: postcssPlugin
        },

        preprocessorOptions: {
            sass: {
                silenceDeprecations: ['import', 'slash-div', 'global-builtin', 'legacy-js-api'],
                quietDeps: true,
                api: 'modern-compiler'
            },
            scss: {
                silenceDeprecations: ['import', 'slash-div', 'global-builtin', 'legacy-js-api'],
                quietDeps: true,
                api: 'modern-compiler'
            },
        },

    }
})

重新预览/编译,即可消除控制台的报错。

如果还是不行,“api: 'modern-compiler'”换为“api: 'modern'”。

2)最稳妥-升级旧版的vk-uview-ui 或者替换为其他的ui组件,处理好sass。

略...

参考

sass - How to set sassOptions in Vite - Stack Overflowhttps://stackoverflow.com/questions/68147471/how-to-set-sassoptions-in-vite/78997875#78997875

多个高赞的回答混在一起....

ending...

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐