Node升级后vue项目node-sass报错问题及解决
作者:﹏゛Aeljinh陌琳
这篇文章主要介绍了Node升级后vue项目node-sass报错问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
Node升级后vue项目node-sass报错
node升级命令
npm install -g n sudo n 16.14.0
升级后以前的vue 项目 node-sass 报错
解决方案
1.卸载原有的node-sass 和 sass-loader
npm uninstall node-sass sass-loader
2.升级项目所有安装的依赖
npm update
3.安装sass-loader与sass
npm install -D sass-loader@^10 sass
4.重新打包
npm run dev
(如图2)
5.Syntax Error: SassError: expected selector.
报错信息表示 /deep/ 写法的错,修改为 (如图3)
若依vue前端node升级记录
原来的node版本是
node: 14.9.0 node-sass: 4.14.1 sass-loader: 8.0.2
升级后node
node: 15.8.0 node-sass: 6.0.1 sass-loader: 10.3.1
升级后遇到的问题
// 在安装完合适的sass-loader以后,运行项目报错,原来项目里全局引入scss文件的配置,sass-loader的版本对于这个在文件之前追加scss代码的选项名均有不同 sass-loader v8-,这个选项名是 “data” sass-loader v8 中,这个选项名是 “prependData” sass-loader v10+,这个选项名是 “additionalData” css: { loaderOptions: { sass: { additionalData: `@import '@/assets/styles/variables.scss';`, }, }, },
// 结果出现了 Syntax Error: SassError: This file is already being loaded. 这个错误。原因是将这个scss文件重复引入了, 修改如下: css: { loaderOptions: { sass: { // additionalData: `@import '@/assets/styles/variables.scss';`, additionalData: (content, loaderContext) => { const { resourcePath } = loaderContext; if (resourcePath.endsWith("variables.scss")) return content; return `@import "@/assets/styles/variables.scss"; ${content}`; }, }, }, },
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
您可能感兴趣的文章:
- Vue安装sass-loader和node-sass版本匹配的报错问题
- 用npm install时报错node-sass npm ERR command failed问题的解决方法
- 安装 node-Sass 报错的解决记录(三步解决法)
- vscode输入npm install报错:node-sass@8.0.0 install:'node scripts/install.js'解决
- vue安装node-sass和sass-loader报错问题的解决办法
- node-sass@4.14.1报错的最终解决方案分享
- window环境下npm install node-sass报错的解决方法
- node-sass常见报错的问题及解决方法