css-loader 类名hash 化,指定文件夹类名 不使用hash

435 阅读1分钟

引入插件

const cssLoaderGetLocalIdent = require('css-loader/lib/getLocalIdent.js');

配置css

[
      css,
      {
        cssModules: true,
        transpileModules: ['antd', 'antd-mobile'],
        cssLoaderOptions: {
          localIdentName: '[local]___[hash:base64:5]',
          getLocalIdent: (context, localIdentNames, localName, options) => {
            let hz = context.resourcePath.replace(context.rootContext, '');
            if (/node_modules/.test(hz)) { //符合规则的不需要hash 化
              return localName;
            }
            return cssLoaderGetLocalIdent( //不符合规则的需要hash 化
              context,
              localIdentNames,
              localName,
              options
            );
          }
        }
      }
]