webpack PostCSS Loader has been initialized using an options object that does not match the API

一、出现的问题

在做webpack配置css兼容的时候出现了postcss-loader插件不兼容问题:

//webpack.config.js中的原始代码
{
   test:/\.(le|c)ss$/,
   use:['style-loader','css-loader',{
       loader:'postcss-loader',
       // postcss-loader插件不兼容问题
       options:{
           plugins:function(){
               return[
                   require('autoprefixer')({//添加浏览器厂商前缀,避免手动处理样式兼容问题
                        'overrideBrowserslist':[//覆盖浏览器列表
                               ">0.25%",//查询条件来限定浏览器和 node 的版本范围(大小写不敏感)
                               "not dead"
                        ]
                   })
                ]
            }
       }
   },'less-loader'],
   exclude: /node_modules/
}

二、当前webpack版本号

├── webpack@5.74.0
└── webpack-cli@4.10.0

三、解决方法

原因:postcss-loader这个版本不支持在webpack.config.js文件

第一步: 注释掉webpack.config.js的如下部分:

//webpack.config.js
{
   test:/\.(le|c)ss$/,
   use:['style-loader','css-loader',{
       loader:'postcss-loader',
       // postcss-loader插件不兼容问题
       //options:{
       //    plugins:function(){
       //        return[
       //            require('autoprefixer')({//添加浏览器厂商前缀,避免手动处理样式兼容问题
       //                 'overrideBrowserslist':[//覆盖浏览器列表
       //                        ">0.25%",//查询条件来限定浏览器和 node 的版本范围(大小写不敏感)
       //                        "not dead"
       //                 ]
       //            })
       //         ]
       //     }
       //}
   },'less-loader'],
   exclude: /node_modules/
}

第二步: 在webpack.config.js文件同级目录下新建postcss.config.js:

//postcss.config.js
//将上面注释掉的plugins,复制到该文件
module.exports={
    plugins:function(){
        return[
            require('autoprefixer')({//添加浏览器厂商前缀,避免手动处理样式兼容问题
                'overrideBrowserslist':[//覆盖浏览器列表
                    ">0.25%",//查询条件来限定浏览器和 node 的版本范围(大小写不敏感)
                    "not dead"
                ]
            })
        ]
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值