TypeError: this.getResolve is not a function

前言

最近剛好一些專案需求,所以會使用 Vue Cli2,但是在環境架設上突然發生一個錯誤,所以這一篇就來紀錄一下解決原因

發生錯誤原因

通常我們要安裝 bootstrap 跟 scss 一定會輸入以下指令

1
npm install bootstrap node-sass sass-loader --save

所以 package.json 就會安裝以下資訊

1
2
3
4
5
6
7
"dependencies": {
"bootstrap": "^4.4.1",
"node-sass": "^4.13.1",
"sass-loader": "8.0.3",
"vue": "^2.5.2",
"vue-router": "^3.0.1"
},

接下來就會進去寫 scss,但是這時候就會發生一個錯誤

1
2
3
4
5
6
7
8
9
10
Module build failed: TypeError: this.getResolve is not a function
at Object.loader (/Users/rayxu/HexGitHub/vuewebpack/node_modules/sass-loader/dist/index.js:52:26)

@ ./node_modules/vue-style-loader!./node_modules/css-loader?{"sourceMap":true}!./node_modules/vue-loader/lib
/style-compiler?{"vue":true,"id":"data-v-7ba5bd90","scoped":false,"hasInlineConfig":false}!./node_modules/sas
s-loader/dist/cjs.js?{"sourceMap":true}!./node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/A
pp.vue 4:14-357 13:3-17:5 14:22-365
@ ./src/App.vue
@ ./src/main.js
@ multi (webpack)-dev-server/client?http://localhost:8080 webpack/hot/dev-server ./src/main.js

這個問題是在於 sass-loader 安裝的版本太高所導致的錯誤,所以只需要將該版本像下降版本就可以解決囉

舉例來講我是將我的 sass-loader 改成 7.3.1,然後刪除 node_modules 資料夾重新 npm install 就可以解決哩

1
2
3
4
5
6
7
"dependencies": {
"bootstrap": "^4.4.1",
"node-sass": "^4.13.1",
"sass-loader": "7.3.1",
"vue": "^2.5.2",
"vue-router": "^3.0.1"
},

參考文獻

0%