解决webpack5 css开启modules时antd样式不生效的问题

解决webpack5 css开启modules时antd样式不生效的问题

参考https://blog.csdn.net/mccgodlov/article/details/117336102

        {
          test: /\.(css|less)$/,
          // 采用css modules的解析方式时,排除对node_modules文件处理
          exclude: /node_modules/,
          use: [
            MiniCssExtractPlugin.loader,
            {
              loader: 'css-loader',
              options: {
                importLoaders: 2,
                modules: {
                  mode: 'local',
                  localIdentName: '[name]__[local]--[hash:base64:5]',
                },
              },
            },
            'postcss-loader',
            {
              loader: 'less-loader',
              options: {
                lessOptions: {
                  javascriptEnabled: true,
                  modifyVars: {
                    '@ant-prefix': '_ant',
                  },
                },
              },
            },
          ],
        },
        // 解决使用css modules时antd样式不生效
        {
          test: /\.(css|less)$/,
          // 排除业务模块,其他模块都不采用css modules方式解析
          include: [/node_modules/], // antd(node_modules文件)目录
          use: [
            MiniCssExtractPlugin.loader,
            {
              loader: 'css-loader',
            },
            'postcss-loader',
            {
              loader: 'less-loader',
              options: {
                lessOptions: {
                  javascriptEnabled: true,
                  modifyVars: {
                    '@ant-prefix': '_ant',
                  },
                },
              },
            },
          ],
        },
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当使用webpack5,可能会出现在.css文件中的图片路径无法找到的问题。这是因为在webpack5中,引入图片的方式发生了变化。 在之前的版本中,我们可以直接在.css文件中使用相对路径来引入图片。但是在webpack5中,除非使用绝对路径,否则默认情况下无法正确解析路径。 解决这个问题的方法有两种: 1. 使用绝对路径:在.css文件中使用绝对路径来引入图片,可以确保路径的正确解析。例如,如果图片位于项目根目录下的img文件夹中,可以这样引入:background-image: url(/img/example.jpg); 2. 配置webpack的文件解析规则:在webpack的配置文件中,可以通过配置resolve.alias来解决路径问题。例如,如果图片位于项目根目录下的img文件夹中,可以这样配置resolve.alias: ```javascript module.exports = { //... resolve: { alias: { '@img': path.resolve(__dirname, 'img') } } }; ``` 然后在.css文件中使用别名来引入图片:background-image: url('@img/example.jpg'); 无论使用哪种方法,都需要确保图片路径的正确性。此外,还需要注意webpack5使用的是asset模块,需要在配置文件中正确设置相关的loader,以便正确处理图片文件。 总之,针对webpack5中.css样式图片路径找不到的问题,可以通过使用绝对路径或配置resolve.alias来解决。同,确保正确配置相关的文件解析规则和loader,以便正确处理图片文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值