踩坑:css-loader使用CSS Modules问题

首先,在vue-loader v14与v15版本中,使用css Modules的方式有所不同。

// v15
{
  module: {
    rules: [
      // ... 其它规则省略
      {
        test: /\.css$/,
        use: [
          'vue-style-loader',
          {
            loader: 'css-loader',
            options: {
              // 开启 CSS Modules
              modules: true,
              // 自定义生成的类名
              localIdentName: '[local]_[hash:base64:8]'
            }
          }
        ]
      }
    ]
  }
}

CSS Modules 现在需要通过 css-loader 选项显式地配置(如上所示),而不是在vue-loader中通过options的cssModules来设置。

Module build failed (from ./node_modules/css-loader/dist/cjs.js):
ValidationError: CSS Loader Invalid Options
.....

检查了3个配置文件都没有问题。从css-loader入手,最初采用[email protected],最新版的css-loader配置无效,可降低css-loader的版本为2.1.1.

你可能感兴趣的:(日常踩坑,vue)