【问题标题】:How to properly handle css-files by mini-css-extract-plugin in webpack 4?如何通过 webpack 4 中的 mini-css-extract-plugin 正确处理 css 文件?
【发布时间】:2020-02-16 16:25:48
【问题描述】:

webpack 4 有一个简单的配置

const path = require('path');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');

module.exports = {
    entry: {
        app: './src/index.js',
    },
    output: {
        filename: '[name].js',
        path: path.resolve(__dirname, './dist'),
        publicPath: '/dist',
    },
    plugins: [
        new MiniCssExtractPlugin({
            filename: '[name].css',
        })
    ],
    module: {
        rules: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                exclude: '/node_modules/'
            },
            {
                test: /\.css$/,
                use: [
                    MiniCssExtractPlugin.loader,
                    'css-loader'
                ],
            },
        ],
    },
}

CSS-file被导入入口点(index.js),需要在生产构建中将其输出到单独的CSS-file(使用mini-css-extract-plugin,想试试这个插件,而不是其他方法)。但是会出现错误: https://i.stack.imgur.com/VoqTW.png

这是完整的文件结构 https://github.com/DazzRune/webpack4test

【问题讨论】:

    标签: webpack-4 mini-css-extract-plugin


    【解决方案1】:

    你可以试试这个:

    {
                    test: /\.css$/,
                    use: [{
                        loader: MiniCssExtractPlugin.loader,
                        options: {
                            publicPath: (resourcePath, context) => {
                                return path.relative(path.dirname(resourcePath), context) + '/';
                            }
                        }
                    },
                    'css-loader'
                ]
                }
    

    new MiniCssExtractPlugin({
                filename: "[name].css",
                chunkFilename: "[id].css",
                ignoreOrder: false
            })
    

    它正在和我一起工作 归功于guy

    【讨论】:

      【解决方案2】:

      一切正常,webpack 正在编译,没有任何错误。尝试执行npm install,因为您拥有完成任务所需的所有加载程序。

      【讨论】:

      • 我尝试再次安装,然后npm run build 并得到了与我的屏幕截图相同的错误。
      • 错误表明你没有合适的加载器来处理 css 文件,而在你的配置中你有它。此外在我的机器上编译成功,没有任何错误。
      猜你喜欢
      • 2019-02-22
      • 2018-08-30
      • 2019-01-29
      • 2023-01-05
      • 2018-08-26
      • 2019-05-23
      • 2019-04-23
      • 2019-06-27
      • 2019-03-05
      相关资源
      最近更新 更多