首页 > 解决方案 > postcss 不能与 webpack 5 和 sass 结合使用

问题描述

我正在使用 webpack 5 和最新的 css/postcss/sass 包。现在我得到了错误

  Module not found: Error: path argument is not a string

如果我删除 postcss 加载程序,它可以工作。

那是代码

            rules: [{
            test: /\.s?css/i,
            use: [
                MiniCssExtractPlugin.loader,
                {
                    loader: 'css-loader',
                    options: {
                        sourceMap,
                        url,
                        importLoaders: 1,
                    }
                },
                {
                    loader: require('postcss-loader').loader,
                    options: {
                        sourceMap,
                        postcssOptions: {
                            plugins: [
                                require('postcss-import')(),
                                require('cssnano')(),
                                require('autoprefixer')(autoprefixerOptions),
                                require('postcss-merge-rules')(),
                                require('postcss-object-fit-images'),
                            ],
                        },
                    },
                }, {
                    loader: 'sass-loader',
                }
            ]
        },]

标签: webpacksass-loaderpostcss-loader

解决方案


好的,我解决了。

它是

loader: require.resolve('postcss-loader'),

并不是

require('postcss-loader').loader

推荐阅读