在搭建vue脚手架 或者是在vue项目中,想使用sass(scss)的功能,报错Module build failed: TypeError: this.getResolve is not a function at Object.loader
- 第一步:先安装以下几个包:
npm install node-sass --save-dev //安装node-sass
npm install sass-loader --save-dev //安装sass-loader
npm install style-loader --save-dev //安装style-loader
- 第二部:降低sass版本
上面三个包安装完成后,运行项目依然报错
这是因为当前sass的版本太高,webpack编译时出现了错误,
这个时候只需要换成低版本的就行,下面说一下修改方法,很简单:找到package.json文件,里面的 "sass-loader"的版本更换掉 就行了。
我本地是将 "sass-loader": "^11.0.0"
,更换成了 "sass-loader": "^7.3.1"
- 第三步:
npm install
package文件中的sass版本降低后保存,然后npm install,完成后就可以重新启动项目,运行成功。
- 二更:
使用上面的方法发现又报错,说sass的有两个包5.0.0和4.0.0不兼容,然后就找到了里面一个5.0.0的包,改成4.0.0,然后重新npm install ,解决问题。
参考: