使用Vue.js中的vue.config.js修复sass-loader错误

时间:2019-03-23 18:44:54

标签: sass vue-cli-3 sass-loader

我试图在从Vue CLI 3生成的Vue.js应用程序中使用外部sass文件(About.sass)。但是,在编译时,我收到有关“未知单词”的错误。

经过大量研究,我的应用程序使用了“ webpack-chain”,而我使用了“ vue.config.js”来配置sass-loader。

我的配置时间表:

  1. Vue CLI 3-默认预设
  2. 添加了<style src="../sass/About.sass" scoped></style>
  3. 纱线添加sass-loader节点-sass样式-加载器
  4. 将加载程序添加到vue.config.js

vue.config.js

module.exports = {
    chainWebpack: config => {
      config.module
        .rule('sass')
        .test(/\.sass$/)
        .use('sass-loader')
          .loader('sass-loader')
          .loader('css-loader')
          .loader('style-loader')
        .end()
    }
}

我真的被封锁了,无法使它正常工作。我收到此错误:

 ERROR  Failed to compile with 1 errors                                                                        22:02:03

 error  in ./src/sass/About.sass?vue&type=style&index=0&id=c226fde6&scoped=true&lang=css&

Syntax Error: SyntaxError

(2:1) Unknown word

  1 |
> 2 | var content = require("!!../../node_modules/vue-style-loader/index.js??ref--9-oneOf-1-0!../../node_modules/css-loader/index.js??ref--9-oneOf-1-1!../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../node_modules/sass-loader/lib/loader.js??ref--9-oneOf-1-3!./About.sass?vue&type=style&index=0&id=c226fde6&scoped=true&lang=css&");
    | ^
  3 |
  4 | if(typeof content === 'string') content = [[module.id, content, '']];

有什么帮助或建议吗?预先感谢。

1 个答案:

答案 0 :(得分:0)

似乎我忘记了在标签lang="sass"中指定类型<style src="../sass/About.sass" scoped></style>

Vue足够聪明,可以配置加载程序,因此甚至不需要'vue.config.js'。