记一次在vue中使用scss报错

1. 安装scss

npm install node-sass sass-loader --save-dev

npm install  style-loader css-loader --save-dev

2. 在build文件中找到webpack.base.conf.js, 配置如下:

 {
        test: /\.vue$/,
        loader: 'vue-loader',
        // options: vueLoaderConfig,
        options: {
          loaders: {
            'scss': 'style-loader!css-loader!sass-loader'
          }
        }

  

 {
        test: /\.scss$/,
        loaders: ["style", "css", "sass"]          // 顺序不能乱
      }

3. 觉得这样就ok了,可是运行时,报错

Module build failed: TypeError: this.getResolve is not a function
    at Object.loader (C:\Users\BigBear\Desktop\vue_admintest\node_modules\[email protected]@sass-loader\dist\index.js:52:26)

 @ ./node_modules/[email protected]@style-loader/dist/cjs.js!./node_modules/css-loader!./node_modules/vue-loader/lib/style-compiler?
{"vue":true,"id":"data-v-7ba5bd90","scoped":true,"hasInlineConfig":false}!./node_modules/[email protected]@sass-loader/dist/cjs.js!./
node_modules/vue-loader/lib/selector.js?type=styles&index=0!./src/App.vue 2:26-345  

一般这种情况就是说sass-loader当前的版本太高了,将其调低一点就行之前版本

 "sass-loader": "^8.0.2",
现在版本:
 "sass-loader": "^7.0.2",

猜你喜欢

转载自www.cnblogs.com/big--Bear/p/12662084.html