Vue搭建项目时候使用的node-sass(5.0.0) 和 sass-loader(10.1.0),
同事服务器安装部署打包时出现上述错误,目测为版本不兼容导致,
于是在node-sass Issues中找到了答案: 由于我本地使用node版本为12.0.1,服务器为较新的16.0.1,所以出现了兼容问题
解决方案:
一:升级node-sass到最新版本即可(在用方案)
npm uninstall node-sass
npm install node-sass@6.0.1
二:降级nodejs到12.0.1
// 安装nvm, 方式多种此处自行百度
1. 下载地址,https://github.com/coreybutler/nvm-windows/releases
2. 检测版本,nvm -v
3. 切换版本,
nvm ls // 查看目前已经安装的版本
nvm install 8.9.1 // 安装指定的版本的nodejs
nvm use 8.9.1 // 使用指定版本的nodejs
nvm uninstall 8.9.1 //卸载指定版本的nodejs
=================== 2020.02.14 更新 =====================
问题描述:loaderOptions配置
Syntax Error: ValidationError: Invalid options object. Sass Loader has been initialized using an options object that does not match the API schema.
object { implementation?, sassOptions?, prependData?, sourceMap?, webpackImporter? }
解决方案:
查看package.json中sass-loader版本,修改config配置如下:
sass-loader V8-,Data
sass-loader V8+,prependData
sass-loader V10+,additionalData
css: {
loaderOptions: {
sass: {
// 变量名与版本变化
prependData: `@import "@/style/rem.scss";`
}
},
sourceMap:false,
extract: false
},