安装node.js的时候,从官方下载了最新的版本v16.13.0,于是在vue项目中使用lang="scss"的时候,就掉进了一个大坑里,安装sass-loader会发现各种版本冲突,不是webpack就是node-sass…。查阅相关资料发现node.js与node-sass的版本对应关系。
还查到了node.js的16版本对应着sass-loader的10.0.1,经过测试还是不行,于是我查看了sass-loader的已发布版本,试了一下v10.2.0,然后就可以了。
安装淘宝镜像
npm install -g mirror-config-china --registry=http://registry.npm.taobao.org
安装node-sass
npm install node-sass@6.0.1 --save-dev
安装sass-loader
npm install sass-loader@10.2.0 --save-dev
不指定版本的话,默认安装最新版本
安装成功如下,最后两行
"devDependencies": { "@vue/cli-plugin-babel": "~4.5.0", "@vue/cli-plugin-eslint": "~4.5.0", "@vue/cli-plugin-router": "~4.5.0", "@vue/cli-service": "~4.5.0", "@vue/compiler-sfc": "^3.0.0", "@vue/eslint-config-standard": "^5.1.2", "babel-eslint": "^10.1.0", "eslint": "^6.7.2", "eslint-plugin-import": "^2.20.2", "eslint-plugin-node": "^11.1.0", "eslint-plugin-promise": "^4.2.1", "eslint-plugin-standard": "^4.0.0", "eslint-plugin-vue": "^7.0.0", "node-sass": "^6.0.1", "sass-loader": "^10.2.0" }